2009-03-24 5 views

Répondre

0

oui, la commande d'écriture. Et la commande ouverte pour ouvrir le fichier. Quelque chose comme ça, si ma rouillées mémoire FORTRAN sert:

OPEN(UNIT=1, FILE=FNAME, STATUS='NEW') 
WRITE(UNIT=1,FMT=*) "your data" 

Votre autre option est d'écrire simplement stdout (unité = *) et la redirection de la sortie de la ligne de commande (par exemple: $ myfortranprogram> sortie.txt).

0

Si vous êtes sur unix/linux (ce qui est probable), puis juste rediriger la sortie vers un fichier:

a.out > myoutputfile 

où a.out est le nom de l'exécutable compilé. Vous pouvez également modifier votre code pour écrire dans un fichier au lieu de simplement à la console:

io=22 !or some other integer number 
open(io,file="myoutputfile") 
write(io,*)myint,myreal 
close(io) 

ou de garder annexant les valeurs à un fichier existant:

open(io,file="myoutputfile",position="APPEND") 

mais cela est uniquement possible en Fortran 90 , pas dans fortran 77. Essayez de renommer votre .f en .f90 dans ce cas.

1

Oui, la commande d'écriture. Les détails devraient être dans un livre ou sur le net, mais voici un exemple simple:

OPEN(UNIT=20, FILE='FILENAME.TXT', STATUS='NEW') 
C STATUS='NEW' WILL CREATE A NEW FILE IF ONE DOESN'T EXITST, 'REPLACE' WILL 
C OVERWRITE OLD ONE 
WRITE(UNIT=20, *)(A(I),I=1,10) 
CLOSE(UNIT=20) 

En fortran77 il était toujours bon d'éviter le nombre d'unités à faible (inférieur à 10), parce que certains d'entre eux ont été réservés - en fonction de la plate-forme, compilateur ... généralement, commencer par ceux au-dessus de 10.

Questions connexes