Autor Tópico: Leitura de arquivos em FORTRAN  (Lida 5327 vezes)

Offline snell

  • Usuário Ubuntu
  • *
  • Mensagens: 231
  • Labor improbus omnia vincit
    • Ver perfil
    • Canal 8 - Uma homenagem à Chespirito!
Leitura de arquivos em FORTRAN
« Online: 28 de Outubro de 2008, 18:07 »
Fala pessoal, tudo bem?

Estou com um problema para ler um arquivo em formato .dat. Este arquivo tem características próprias que devem ser lidas. Ele tem mais ou menos este formato:

Citar
#
# Os # são comentarios do arquivo
#
     1   (o 1 deve ser lido, o que esta entre parentêses e comentario)
#
#
#
     0.2    (comentario-nao deve ser lido, apenas o dado)
     0.2    (comentario-nao deve ser lido, apenas o dado)
     0.2    (comentario-nao deve ser lido, apenas o dado)

É mais ou menos isso. A subrotina que criei para ler um arquivo deste é mais ou menos assim:

Citar
SUBROUTINE leitura

IMPLICIT NONE

CHARACTER*1 comentario
INTEGER maxline, r, i
PARAMETER (comentario='#', maxline=500)
CHARACTER*132 RECORD(maxline), line

INTEGER var1, var2, var3
REAL var4, var5, var6

OPEN(10, file'/diretorio/do/arquivo.dat', status='old')

WRITE(*,*) 'Lendo o arquivo.dat'

r=0
DO i=1,maxline
   r=r+1
   READ(10, '(a132)', END=100)
   IF(line(1:1).EQ.comentario) THEN
        r=r-1
   ELSE
        RECORD(r)=line
   ENDIF
ENDDO
CLOSE(10)

r=1
line=RECORD(r)
READ(line,*) var1

r=r+1
line=RECORD(r)
READ(line,*) var2

r=r+1
line=RECORD(r)
READ(line,*) var3

r=r+1
line=RECORD(r)
READ(line,*) var4

r=r+1
line=RECORD(r)
READ(line,*) var5
.
.
.
CLOSE(10)
RETURN
ENDSUBROUTINE

O programa é mais ou menos esse. Quando mando o programa principal escrever as variáveis, aparece o seguinte erro:

Citar
fortt1:severe<59>: list-directed I/O syntax error, unit-5, file Internal List-Directed Read

Alguém pode me ajudar??
Notebook
Intel Core i7 2620, 4Gb RAM, 750 Gb HD
Ubuntu 14.04