FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
#1
|
|||
|
|||
Procedimiento read
Hola a todos, tengo el siguiente codigo que segun yo debe leer un archivo, el archivo contiene la sig. informacion:
tiempo X Y Z Conc. Intervalo1 ConcIntervalo2 0, 2, 2, 6, 437273.397853, 3453867.423908,.......etc Código:
const M=2; Ncx=10; Ncy=10; Ncz=10; fuenteX=1; fuenteY=5; fuente=5; var ConcXY:TextFile; ni: array[1..M,0..Ncx,0..Ncy,0..Ncz,0..1]); x,y,z,k: Integer; Implementation procedure TForm1.Button1Click(Sender: TObject); begin AssignFile(ConcXY,'ConcXY.txt'); {$I-}reset(ConcXY);{$I+} for x:=0 to Ncx do begin for y:=0 to Ncy do begin for z:=0 to Ncz do begin if z=fuenteZ then begin for k:=0 to M do begin if k=M then begin readln(ConcXY,ni[k,x,y,z,0]); end else begin read(ConcXY,ni[k,x,y,z,0); end; end; // graficar end; end; end; end; end; Este codigo me da el siguiente Error: Invalid Numeric Imput Agradesco a quien se tome la molestia de contestarme. Salu2 |
#2
|
||||
|
||||
Podes usar la directiva {$i-} para desactivar la comprobación del input, y la función IOError para verificar que el dato leido sea correcto.
Otra posible solución es procesar el archivo como un texto, intentar la conversión de tipos (con funciones del tipo StrToInt, StrToFloat, etc.) e informar al usuario si ha ocurrido un error en alguna línea. Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#3
|
||||
|
||||
Hola,
No entiendo nada. Planteaste la misma cuestión en este Hilo no hace nada, vamos, anteayer mismo. Se te dio una respuesta en el propio Hilo y en otro además, que pareció convencerte, a tenor de lo que tú mismo replicaste. Y, ahora, incias un nuevo Hilo para preguntar lo mismo... como digo... No sé qué pensar. No entiendo nada. Sino es que en la guía de estilo se ruega no iniciar nuevos Hilos para las mismas preguntas... ¿no podrías haber expuesto tus dudas en el anterior Hilo y a partir de ahí hubiéramos intentado seguir adelante con el tema? En fin. Ahora hay dos Hilos duplicados, con la misma pregunta, varias respuestas diferentes y veremos a ver si suficientes... ¡Todo sea porque soluciones al cabo el problema! ¿No? |
#4
|
|||
|
|||
¡Hola! Ber.
Si el archivo que estás leyendo no lo has creado tú y tiene información numérica será un archivo tipeado y no tiene sentido abrirlo como si fuera de texto. Deberías conocer su estructura, declarar un tipo de registro con los campos necesarios, declarar una variable de ese tipo y, apartir de ahí, leer el archivo sin precuparte de saltos de línea. Si lo creas tú, tampoco tiene sentido crear un fichero de texto para almacenar información numérica con los inconvenientes de conversión de tipos, tanto al escribir como al leer. Espero haberte servido de ayuda. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
|