Bonjour,
Je voudrais modifier un fichier qui a le format suivant :
En gros, le header commence avec les lignes WID2, puis STA2 et DAT2 annonce l'arrivée des données. Les données se finissent par la ligne qui commence par CHK2. Et ainsi de suite.WID2 2005/02/04 11:05: 0.055 BARC LHE XXX CM6 359989 100.000000 90.0 0.0
STA2 SEDZ 9.16300 -83.33600 WGS-84 0.375 0.000
DAT2
eV3tyDVAt-X2dFUOl+tCNZ8X0r-oBrNXTkQYDVDc+aOlMrTVJUIW9oQVKl8r0kPbPVFY5o4r9UGVHmPU
...
CHK2 59345435
WID2 2005/02/04 11:05: 0.055 BARC LHZ XXX CM6 359989 100.000000 -1.0 0.0
STA2 SEDZ 9.16300 -83.33600 WGS-84 0.375 0.000
DAT2
ilKymJPUEUOkGV3MURlOFIVLUQUOmDnImQW3Y8UQ9l9WHV1KUOnGoFl+l3UKY4X6GlDUTVSlBmKkQmBV
JUNkKX7X
...
CHK2 59345435
Je voudrais modifier les lignes WID2 et STA2 en fonction de ce qu'elles contiennent. C'est à dire, par exemple, modifier XXX en fonction de ce que l'on ait LHE ou LHZ comme paramètre précédant.
Qu'elle technique me conseillez-vous? Ouvrir le fichier en lecture-écriture et faire les modifs au cours de la lecture? Ou mettre le fichier entier (qui est assez gros) dans une variable et utiliser les regex avec le paramètre s///g et écraser le fichier avec la nouvelle variable ainsi créée?
Merci d'avance
Partager