Lecture fichier texte par "block"
Bonjour,
J'ai un fichier texte composé de plusieurs blocks. Ce fichier est formaté comme suit (j'ai ajouté des commentaires juste pour l'exemple)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
387 %Header
9240 %Header
Fonte de la neige % Header
2007 307 0 % Signal début de mon block
-280 0.00 % données
-267 0.00 % données
-238 0.00 % ...
-210 0.00
-199 0.00
...
...
384 0.00
385 0.00
386 0.00
387 0.00 % données
2007 307 3 % début 2e block
-280 0.00 % données
-267 0.00 % données
-238 0.00
-210 0.00
-199 0.00
... |
Le nom des block est toujours au même format: 2007 307 0; 2007 307 3; ... ;2010 365 21
Les blocks sont de longueur constantes, 387 lignes de données.
Le fichier texte comporte 9232 blocks
Ce que je souhaiterais faire:
- récupérer le nom de chaque block
- extraire 9232 matrices pour les 9232 blocks qui composent mon fichier .txt. Je voudrais obtenir donc 9232 matrices de taille 387x2.
J'avais initialement en tête d'utiliser fgets, mais ça ne me semble pas super propre ni trivial, car il me semble que je serais obligé de faire appel à str2double ou autre chose dans le genre. J'avais également pensé à utiliser 'CommentStyle' de la fonction textscan, mais le nom de mon block change en permanence... Bref, je ne sais pas trop comment me dépatouiller.
Merci pour votre aide !