[Fortran] lire une seule colonne

Résolu
Celeborn Messages postés 22 Date d'inscription   Statut Membre Dernière intervention   -  
 mab -
Bonjour a tous,

j'aimerais connaitre une éventuelle commande fortran qui me permettrait de lire une seule colonne dans un fichier (par exemple la colonne 3 si il en a 7), à savoir que le fichier texte ressemble à ceci :

TITRE
----------------------------------------------------
nom1 | nom 2 | nom 3 | nom 4 |
----------------------------------------------------
colonne1 | colonne 2 | colonne 3 | colonne 4 |

il faudrait donc en plus lire la 3eme colonne, mais uniquement à partir de la 4eme ligne (dans cet exemple)

Merci d'avance !

Celeborn
A voir également:

1 réponse

sony97one Messages postés 28 Date d'inscription   Statut Membre Dernière intervention   2
 
Salut,

Dur dur de trouver de l'aide en fortran...

As tu resolus ton probleme?

Sony
0
mab
 
CAS 1 : tu dois declarer un tableau qui a la dimension du nombre de colonne à lire.exemple pour ton tableau à 7 colonnes: character * 6 table(n)


attention -n- est le nombre de colonnes et les colonnes sont homogenes c.à.d comportent chacune le meme memes nombre de caracteres soit -6-.

dans table(3) tu recupere ta colonne 3.

CAS 2 :si les colonnes ont des larges differentes il faut declarer autant de variables du genre -table- que de colonnes
Une table auxiliaire TableAuxl(jligne,i) est necessaire pour recuperer ta colonne 3 (jlignes indice de la ligne s'il y a plusieurs lignes dans le fichier).


---------------------------------------------------------------------------------
exemple (CAS 1 )
jligne=1
100 read(*,200,err=110,end=150) table(i=1,7)

go to 120
110 stop

120 tableaux( jligne,i)=table

140 jligne = jligne+1
go to 100

150 continue

exemple (CAS 2)

jligne=0
100 read(*,200,err=110,end=150) table1,table2,table3, table4,table5,table6, table7
go to 120
110 stop

120 TableAux( jligne+1,1)=table1
TableAux( jligne+2,1)=table2
TableAux( jligne+3,1)=table3
TableAux( jligne+4,1)=table4
TableAux( jligne+5,1)=table5
TableAux( jligne+6,1)=table6
TableAux( jligne+7,1)=table7



140 jligne = jligne+1
go to 100

150 continue
0