Input #1 : obtenir la ligne, rien que la ligne.

snoopline Messages postés 29 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 septembre 2008 - 9 juin 2005 à 19:27
snoopline Messages postés 29 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 septembre 2008 - 9 juin 2005 à 21:23
Bonjour

J'ai récupéré une fichier text dont je souhaiterais lire les lignes, les unes après les autres.

open "c:\fichier.txt" for input as #1
boucle
input #1, chaine_ligne
fin de fichier

en suivant la valeur de chaine_ligne, je m'aperçois que plusieurs lignes sont lues en même temps, certaines à moitié.

Il me semble qu'il y a un pb au niveau du caractère de fin de ligne?? mais lequel ?

merci pour les idées

6 réponses

Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
9 juin 2005 à 20:02
Line input #1, chaine_ligne

Daniel
0
snoopline Messages postés 29 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 septembre 2008
9 juin 2005 à 20:14
merci Daniel,

Mais... Cela plante le programme sur la ligne Line input #1, chaine_ligne

Le fichier de données fait 3 giga. Je peux le parcourir avec input #1,chaine_ligne (c'est long).
les données sont du type:

ID O05152_SULAC PRELIMINARY; PRT; 713 AA.


AC O05152;


DT 01-JUL-1997 (TrEMBLrel. 04Created)


DT 01-JUL-1997 (TrEMBLrel. 04Last sequence update)


DT 01-MAR-2004 (TrEMBLrel. 26Last annotation update)


DE Glycogen debranching enzyme.


GN Name=treX;

etc...

Je veux lire ligne après ligne pour lire les 2 caractères d'identification de début de ligne.
0
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
9 juin 2005 à 20:58
3 giga c'est trop gros !

essaye de faire MsgBox LOF(1) après l'ouverture



si Line input se plante, input devrait se planter aussi !!!

Daniel
0
snoopline Messages postés 29 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 septembre 2008
9 juin 2005 à 21:08
MsgBox LOF(1) renvoi -1272244632 . qu'est ce?

avec line input #1 : plantage sur cette instruction
avec input #1: chaque input lit des sequences de caractères ne correspondant pas aux ligne.

Comment input fait il pour identifier une fin de ligne ? dans mon cas les coupure se font en milieu de mot.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
9 juin 2005 à 21:20
Line input lit une Ligne complète jusqu'à vbCrLf (chr$(13) + chr$(10))

s'il y a pas de fin de Ligne, ce sera tout le fichier donc plantage !

pour input ça s'arrête à une virgule ou à une fin de Ligne



mais au-dessus de 2147483647 ça plantera dans les 2 cas

Daniel
0
snoopline Messages postés 29 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 septembre 2008
9 juin 2005 à 21:23
Bon...
J'ai changé mon fusil d'épaule.
En php, c'est rapide, pas de plantage.
Mon problème est de transformer ce grand fichier en base SQL.

un grand merci pour le phosphore Daniel.
0
Rejoignez-nous