|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre à l'essai
![]() Nicolas LeborgneInscription : février 2012 Messages : 39 ![]() |
Bonjour,
Depuis hier j'ai repris un script que j'avais laissé il y a quelques mois dont le but, en résumé, est de parser des numéros de téléphones (1 par ligne), et de réaliser ensuite des traitements en fonction. Or, impossible de faire fonctionner le parsing de mon fichier texte ligne par ligne. Voici pourtant le code que j'utilise et qui me semble correct : Code :
Enfin, quand j'éxécute mon script 'test.pl', seul le dernier numéro de téléphone s'inscrit. Merci de m'éclairer sur ce sujet sûrement tout simple |
||
|
|
00
|
|
|
#2 |
|
Membre chevronné
![]() |
ce code est correct, j'affiche bien les 3 lignes quand je le teste...
__________________
Nous les geeks, c'est pas qu'on a une case en moins, c'est juste qu'on compte à partir de zéro. Plus les choses changent, plus elles restent les mêmes |
|
|
00
|
|
|
#3 |
|
Membre Expert
![]() Laurent R.Conseil - Consultant en systèmes d'information Inscription : mai 2012 Messages : 568 ![]() |
Pour moi, il est correct également.
Peut-être un problème de format du fichier en entrée, en particulier des retours à la ligne. J'ai eu un problème analogue avec un fichier n'était pas compatible avec l'OS sur lequel j'exécutais le traitement (incompatibilité entre Unix et Windows). Sauf qu'au lieu du problème classique des ^M sous Unix, on se retrouvait avec les retours en début de ligne sans les sauts de lignes. Du coup, toutes les lignes s'affichaient successivement et très rapidement sur la même ligne de l'écran et, au final, on ne voyait que la dernière ligne du fichier s'afficher. Précise sur quel OS tu exécutes ton programmer et d'où vient ton fichier. Ou met le fichier en pièce jointe.
__________________
Sauf mention contraire explicite, les bouts de code que je poste en réponse à une question n'ont pas forcément été testés. |
|
|
00
|
|
|
#4 |
|
Membre à l'essai
![]() Nicolas LeborgneInscription : février 2012 Messages : 39 ![]() |
J'exécute mon script sous Windows.
Voici mon fichier texte en pièce jointe, ainsi que le script Perl. Et en effet, lors de l'exécution de mon script dans une fenêtre dos, seul la dernière ligne s'affiche. Merci de m'éclairer, parce que là je ne vois vraiment pas pourquoi cela ne fonctionne pas |
|
|
00
|
|
|
#5 |
|
Membre à l'essai
![]() Nicolas LeborgneInscription : février 2012 Messages : 39 ![]() |
En fait, et cela rejoint un peu ce que disait Lolo78, mon fichier texte était en "format Macintosh".
Du coup j'ai recrée un fichier texte format UNIX, et tout marche très bien |
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() Laurent R.Conseil - Consultant en systèmes d'information Inscription : mai 2012 Messages : 568 ![]() |
Dans ce cas, c'est exactement ce dont je parlais. Le format Mac utilise le retour chariot sans saut de ligne comme séparateur de ligne. Du coup, sous Unix, chaque ligne s'écrit sur la précédente et tu ne vois au final que la dernière.
__________________
Sauf mention contraire explicite, les bouts de code que je poste en réponse à une question n'ont pas forcément été testés. |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com