Lecture d'un entête au format texte
Bonjour,
Je reviens vers vous toujours pour un problème de traitement du texte lors de la lecture de fichier avec Matlab.
J'ouvre un fichier comme celui-ci avec Matlab :
Code:
1 2 3 4 5
| temps DTMEAN P(27,1,43) AMM(1) AMM(2) AMM(3) AMM(4) AME(1) AME(2) AME(3) AME(4) DT() DSAUTER() FRONJET()
0.00000000E+00 0.10000000E-03 0.22000000E+06 0.49824601E+03 0.95015804E-01 0.28076911E-01 0.91361550E+02 0.43653336E+08 0.23085178E+06 0.42493001E+05 0.13827114E+09 0.10000000E-03 0.50000000E-02 0.22453124E+01
0.11904119E-02 0.12452059E-03 0.21999128E+06 0.49824441E+03 0.95015853E-01 0.28076911E-01 0.91361289E+02 0.43653196E+08 0.23085190E+06 0.42493001E+05 0.13827074E+09 0.26130353E-03 0.50000000E-02 0.22453124E+01
0.22793846E-02 0.16396923E-03 0.21998494E+06 0.49824294E+03 0.95015898E-01 0.28076911E-01 0.91361289E+02 0.43653068E+08 0.23085200E+06 0.42493001E+05 0.13827074E+09 0.42239417E-03 0.50000000E-02 0.22453124E+01
0.33569012E-02 0.20784506E-03 0.21998067E+06 0.49824283E+03 0.95015901E-01 0.28076911E-01 0.91361289E+02 0.43653058E+08 0.23085201E+06 0.42493001E+05 0.13827074E+09 0.58179011E-03 0.50000000E-02 0.22453124E+01 |
... qui possède un entête dans lequel apparaît la grandeur de chaque colonne. J'arrive en manipulant la fonction fgetl à mettre cet entête dans une variable (VAR) et à rentrer les différentes colonnes de nombres dans un tableau.
La variable VAR contenant l'entête est alors de type cell{1,1} :
Code:
1 2
| VAR =
>> temps DTMEAN P(27,1,43) AMM(1) AMM(2) AMM(3) AMM(4) AME(1) AME(2) AME(3) AME(4) DT() DSAUTER() FRONJET() |
Mon problème c'est que je n'arrive pas à traiter cette cellule, et mettre chacun des termes la composant dans une colonne différente :
Je voudrais au final un tableau de 1 ligne et N colonnes (ici N = 14, mais peut-être variable) contenant cet entête comme cela :
Code:
1 2 3 4 5 6 7 8
| VAR2(1,1) =
>> temps
VAR2(1,2) =
>> DTMEAN
VAR2(1,3) =
>> P(27,1,43)
... |
J'ai bidouillé avec pas mal de choses ( sscanf, ...), en vain.
Est-ce que quelqu'un sait comment faire ?
Merci d'avance,