d'accord.
voici les 8 premières lignes du fichier
MPC_NODE.dat que tu as fourni plus haut :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| CARD ID CP X1 X2 X3 CD PS SEID
--------_______--------________--------________--------________--------
1 'GRID 86725 8290. 1863.13 2003.55 \n'
2 'GRID 86726 8290. 1842.13 2003.55 \n'
3 'GRID 86727 8290. 1821.13 2003.55 \n'
4 'GRID 86728 8290. 1800.13 2003.55 \n'
5 'GRID 86729 8288. 1750. 2003.55\n'
6 'CROD 10000 \n'
7 'GRID 86730 8288. 1726. 2003.55 \n'
8 'GRID 86731 8288. 1689. 2003.55 \n'
--------_______--------________--------________--------________--------
CARD ID CP X1 X2 X3 CD PS SEID |
la ligne 5 (celle qui précède la ligne commençant par "CROD") fait 48 caractères de long, en conséquence le saut de ligne se trouve sur le 48ème caractère, et se retrouve inclu dans le champs
CD, alors que les autres lignes commençant par "GRID" ne prennent jamais en compte le saut de ligne à cause des nombreux espaces en fin de ligne
c'est peut-être plus clair ainsi ?
il est assez évident (?) que la bonne solution ne consiste pas à rajouter des espaces à la fin de la ligne 5, la preuve, c'est difficile de s'en rendre compte
pour le redire simplement; découper par colonnes n'est pas une bonne idée, le découpage par colonnes comme tu le fais donne à l'espace une importance qu'il ne devrait pas avoir.