Bonjour,
Je suis entrain d'essayer de faire un petit programme qui me sera utile dans mon travail.
J'ai un fichier qui se nomme "fichier.raw" avec des données écrites en texte sur lequel je voudrais récupérer quelques valeurs.
En fait, ça fait un petit bout de temps que j'essaye, mais j'ai beaucoup de mal à faire un programme pour pouvoir manipuler les données que je veux.
Ce que je voulais faire, c'est faire appel à votre grand sens de programmateurs avertis et surtout habitués, voir professionnels pour m'aider un peu...
Je vais donc vous mettre un fichier type que j'obtiens, et vous dire les données que je souhaite récupérer!
Le fichier type contient:
//début du fichier à la ligne suivante:
>Controller # 86: galvanostatic channel # 8
>Username:
>Acquisition started on: Dim 7 f´v 1904 16:36
>Saved on file: jb106a_8.RAW
>Cell description: jb106 Cu0,3 pur C/20 0,1-2 red
>Mass of active material: 5.100 mg weighted at x = 0.000
>Molecular weight of active material(at x = 0): 51.811 g
>Atomic weight of intercalated ion: 6.941 g
>Acquisition started at xo = 0.000
>Number of e- transferred per intercalated ion: 1
>(For Æx = 1, ÆQ = 2.638 mAh)
>Æx max allowed on a sweep: 3.000 (ÆQmax=7.915 mAh)
>No amplifier (Imax>=10.0 mA)
>No Uaux recording
>Test Uwrk
>
> Relaxation (same as below)
>
> Do 200 sweep(s)
>
> While Ueq>0.120V (red) or Ueq<1.980V (ox)
> or |ÆQ|<ÆQmax
>
>Set I at -0.1325mA,60.000h (odd) or 0.1325mA,60.000h (even)
> Curtail if U<0.100V (red) or U>2.000V (ox)
> or if |Ueq-U|>1.900V or if |ÆQ|>ÆQmax
> Record 1 init. pt. +1 pt./0.005V +1 final pt.
>
> Relaxation: open circuit for 0.000h
> or until|ÆU/Æt|<|ÆUo/Æto|/60000 or |ÆU/Æt|<0.00 mV/h
> Record 1 init. pt. +1 pt./0.010V +1 final pt.
>
> Next sweep
>
>
>
>
>
>
>
Time/h Uwrk/V I/mA Error xo,x'(Q)
0.000 1.111 -0.000 0 0.000000
0.000 1.091 -0.1325 0 -3.790404e-1
0.003 1.061 -0.1325 0
0.006 1.051 -0.1325 0
0.008 1.044 -0.1325 0
0.011 1.038 -0.1325 0
1.664 0.141 0.1325 0
1.667 0.221 0.1325 0
1.669 0.261 0.1325 0
5.311 1.356 -0.1325 0
5.314 1.331 -0.1325 0
5.317 1.307 -0.1325 0
5.319 1.287 -0.1325 0
5.322 1.267 -0.1325 0
//fin du fichier
En fait, je voudrais récupérer les valeurs suivantes:
>Mass of active material: 5.100 mg weighted at x = 0.000
dans cette ligne, il me faut 5.100 et 0.000
>Molecular weight of active material(at x = 0): 51.811 g
dans cette ligne, il me faut 51.811
>Atomic weight of intercalated ion: 6.941 g
dans cette ligne, il me faut 6.941
>Acquisition started at xo = 0.000
dans cette ligne, il me faut 0.000
>Number of e- transferred per intercalated ion: 1
dans cette ligne, il me faut 1
puis:
Time/h Uwrk/V I/mA Error xo,x'(Q)
0.000 1.111 -0.000 0 0.000000
0.000 1.091 -0.1325 0 -3.790404e-1
0.003 1.061 -0.1325 0
0.006 1.051 -0.1325 0
0.008 1.044 -0.1325 0
0.011 1.038 -0.1325 0
1.664 0.141 0.1325 0
1.667 0.221 0.1325 0
1.669 0.261 0.1325 0
5.311 1.356 -0.1325 0
5.314 1.331 -0.1325 0
5.317 1.307 -0.1325 0
5.319 1.287 -0.1325 0
5.322 1.267 -0.1325 0
ici, il me faut ranger les données dans des colonnes, la première ligne étant les titres des colonnes (time/h, Uwrk/V, etc...)
et les lignes suivantes étant les données contenues dans chaques colonnes (valeurs séparées par des espaces), la colonne "x0,x'(Q)" n'étant donnée qu'en première et deuxième ligne...
Je voudrais faire appel à une âme charitable, qui voudrait bien m'aider à récupérer ces valeurs et les manipuler dans un projet Win32, soit simplement en m'aidant, soit en me donnant une méthode, soit en faisant une bonne partie du boulot (lol) pour que je puisse comprendre comment faire un truc dans le genre, soit à vous de voir.
En espérant que vous allez réussir à m'enlever cette épine du pied, j'attends vos réponses avec impatence.
Merci.
JB