• Martes 30 de Abril de 2024, 06:39

Autor Tema:  Lectura de un fichero valor a valor  (Leído 2253 veces)

juannabis34

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Lectura de un fichero valor a valor
« en: Viernes 18 de Junio de 2010, 19:01 »
0
Hola, acabo de descubrir que lo que hace fortran con la instrucción READ es leer una línea entera de un fichero, y que si queremos leer la siguiente, tenemos que hacer otro READ.

Y ahora mi pregunta es la siguiente, cómo puede leer valor a valor un fichero, es decir, tengo mi fichero con una línea llena de números separados por espacios, cómo puedo leer el primer número y según el valor que sea actuar de una manera o de otra, luego leer el segundo número y lo mismo, así hasta leer el fichero entero ... me he explicado bien??.

Gracias!!!.

juannabis34

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: Lectura de un fichero valor a valor
« Respuesta #1 en: Jueves 24 de Junio de 2010, 14:48 »
0
Ya he conseguido leer uno a uno los valores contenidos en un fichero, pero ahora tengo el problema con el último número que forma parte del fichero, no lo lee y da un error de end of file.

El contenido del fichero es: 1,2,3,4,5,6,7,8

Y el código es el siguiente:

        DO i=1,Size
     
           READ(10,FMT='(I2)',ADVANCE='NO') tmp1
           PRINT *,tmp1
       
        END DO

La sensación es como si el último número estuviese pegado al fin de fichero y no supiera distinguirlo.

Una ayudita, please!!!!!!!!!!!!!!!!!!!.

juannabis34

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: Lectura de un fichero valor a valor
« Respuesta #2 en: Jueves 24 de Junio de 2010, 19:10 »
0
Parece ser que el código anterior ...

        DO i=1,Size

           READ(10,FMT='(I2)',ADVANCE='NO') tmp1
           PRINT *,tmp1
       
        END DO

HA FUNCIONADO!!!!!!!!!!.

juannabis34

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: Lectura de un fichero valor a valor
« Respuesta #3 en: Viernes 25 de Junio de 2010, 18:17 »
0
El truco está en dejar un espacio entre el último número que hay dentro del fichero y el "end of file".