Ligne blanche en fin de fichier txt

scaucisson Messages postés 13 Date d'inscription lundi 27 septembre 2004 Statut Membre Dernière intervention 19 juillet 2006 - 30 sept. 2004 à 15:21
KOMTETSUO Messages postés 1 Date d'inscription vendredi 29 octobre 2004 Statut Membre Dernière intervention 29 octobre 2004 - 29 oct. 2004 à 12:53
Bonjour,

Lorsque je crée un fichier txt, la dernière ligne est blanche.

Open Output_File For Binary Access Read As #1
Do
Astring = Left(CalcArray(Nrow, 0), 44) & Left(CalcArray(Nrow, 1), 40)
Print #1, Astring
Nrow = Nrow + 1
Debug.Print CalcArray(Nrow, 0)Loop Until CalcArray(Nrow, 0) "" And CalcArray(Nrow + 1, 0) ""
' cette boucle est due au fait que j'ai des lignes blanches en plein milieu de mon fichier txt et le EOF s'arrêtait avant la fin du fichier
Close #1

Mon problème est que si je lis ce même fichier, j'ai une erreur à cause de cette ligne...

Open InputSitFile For Binary Access Read As #1
Nrow = 0
Do
Line Input #1, row1 'erreur ici arrivé à la dernière ligne (blanche)
CalcArray(Nrow, 0) = Left(row1, 44)
CalcArray(Nrow, 1) = Mid(row1, 45, 40)
Nrow = Nrow + 1
Loop While Not EOF(1)
Close #1

Comment puis je faire pour la lire ou ne pas la créer?

Merci

4 réponses

crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
30 sept. 2004 à 17:56
tu n'as qu'à tester si la ligne est vide après ton "Line Input"
...
If LenB(trim$(row1))<>0 Then
   ' La ligne n'est pas vide
   ' Colle içi ton traitement
End If
...

Christophe R.
0
scaucisson Messages postés 13 Date d'inscription lundi 27 septembre 2004 Statut Membre Dernière intervention 19 juillet 2006 1
1 oct. 2004 à 17:09
Slt Christophe,

Merci de ta réponse. Cependant, ça ne fonctionne pas comme je veux. En effet, j'ai un fichier *.txt de 1976 lignes sans ligne vide.

Pour une raison que j'ignore, mon programme trouve le EOF à la ligne 763.
Or quand je copie le contenu de mon fichier texte sous excel, il trouve cette ligne blanche ainsi qu'en 894 (sans raison apparante).

J'ai solutionné le pb en passant en binary...

Donc avec ta soluce, arrivé à la ligne 762, je sors de ma boucle...

Sauc'
0
scaucisson Messages postés 13 Date d'inscription lundi 27 septembre 2004 Statut Membre Dernière intervention 19 juillet 2006 1
1 oct. 2004 à 17:11
Je pensais pe supprimer le caractère "retour chariot" à la fin de l'avant dernière ligne pour éviter que mon fichier txt contienne cette ligne blanche.

Je sais pas comment faire mais si kinkun a une idée....
0
KOMTETSUO Messages postés 1 Date d'inscription vendredi 29 octobre 2004 Statut Membre Dernière intervention 29 octobre 2004
29 oct. 2004 à 12:53
Salut

j'ai exactement le même problème : lorsque je crée le fichier texte tout se passe bien (pas de ligne blanche) mais lorsque je le ferme ("Close #Fic1") il me rajoute une ligne blanche à la fin qui me pose problème...

Une idée ???
0
Rejoignez-nous