VB 6 / Probleme EOF

VB 6 / Probleme EOF - VB/VBA/VBS - Programmation

Marsh Posté le 18-12-2005 à 21:16:58    

voila. je cherche des entrées dans un fichier TXT et quand il n'y a plus d'entrées...
Ben de temps en temps ça plante...
Voila le code. il me dit qu'il arrive à la fin du fichier alors que j'ai mis une condition ON ERROR GOTO
 
 

Spoiler :

 Open "d:/bateau.txt" For Output As #1
    Open "d:/ttt.txt" For Input As 2
    On Error GoTo For1:
    For a = 1 To 250
    Input #2, truc
    Print #1, truc;
    Next a
For1:
Close #1, #2,
    Open "d:/bateau.txt" For Input As #1
    Open "d:/ttt.txt" For Output As 2
    On Error GoTo For2:
    Input #1, truc
    Print #2, truc;
FinFor2:
Close #1, #2
For2:


 
Quelqu'un pourrait me donner un coup de main ?


Message édité par erwan83 le 18-12-2005 à 21:44:31

---------------
http://www.ypikay.com
Reply

Marsh Posté le 18-12-2005 à 21:16:58   

Reply

Marsh Posté le 19-12-2005 à 09:23:57    

Salut
 
N'oublie pas le # devant 2 !!
La fonction "Do While Not EOF(#1)" (fait tant que tu n'es pas à la fin du fichier 1), "Loop" peut elle te convenir ???
 

Reply

Marsh Posté le 19-12-2005 à 12:12:06    

théoriquement oui
j'ai copié mon code et il vire le # automatiquement. je vais essayer


---------------
http://www.ypikay.com
Reply

Marsh Posté le 19-12-2005 à 12:14:38    

  While Not EOF(#2)
   While Not EOF(#2)=True
 
il me met : attendu  : Expression
...


---------------
http://www.ypikay.com
Reply

Marsh Posté le 19-12-2005 à 12:17:29    

Bon je vais essayer ça :
a priori pas d'erreur mais le soucis c'est que le programme execute la commande environ une fois par seconde et qu'il plante de temps en temps (au bout d'une heure parfois...)
 
    Open "c:/bateau.txt" For Output As #1
    Open "c:/ttt.txt" For Input As #2
   While Not EOF = True
    Input #2, truc
    Print #1, truc;
    Loop
    Wend:
Close
 
etc etc


---------------
http://www.ypikay.com
Reply

Marsh Posté le 19-12-2005 à 12:21:55    

ziold a écrit :

Salut
 
N'oublie pas le # devant 2 !!
La fonction "Do While Not EOF(#1)" (fait tant que tu n'es pas à la fin du fichier 1), "Loop" peut elle te convenir ???


 
C'est bon j'ai trouvé : ça marche
 
    Open "c:/bateau.txt" For Output As #1
    Open "c:/ttt.txt" For Input As #2
   While Not EOF(2) = True
    Input #2, truc
    Print #1, truc;
    Wend:
Close
    Open "c:/bateau.txt" For Input As #1
    Open "c:/ttt.txt" For Output As 2
   While Not EOF(1) = True
    Input #1, truc
    Print #2, truc;
    Wend:
 
MERCI


---------------
http://www.ypikay.com
Reply

Marsh Posté le 19-12-2005 à 12:42:37    

Oui bien vu fallait pas le dièse dans le EOF (End Of File...). Par contre je n'utilise pas le "= True", je ne dis pas que c'est mieux...
 

Reply

Marsh Posté le 19-12-2005 à 12:44:54    

lol. pour le moment ça tourne et àa ne plate pas...
mais je verrai ce soir !


---------------
http://www.ypikay.com
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed