Lire fichier

Signaler
Messages postés
121
Date d'inscription
vendredi 11 octobre 2002
Statut
Membre
Dernière intervention
8 août 2008
-
Messages postés
5
Date d'inscription
jeudi 17 octobre 2002
Statut
Membre
Dernière intervention
9 juillet 2003
-
salut a tous

j'ai un probleme pour lire un fichier.
en fait je cherche a faire un enregistrez sous en lisant un fichier en entier et en l'ecrivant dans un autre.
j'ai fais :

dim ligne, fichierentier as string
open "fichier" for input as #1
while not eof(1)
line input#1, ligne
fichierentier = fichierentier + vbcrlf + ligne
wend
open "autrefichier" for output as #2
print#2, fichierentier

mais ca marche pas, j'obtient des retour chariot.
si quelqu'un a une idee ou connait un commande equivalente a enregistrer sous

merci

5 réponses

Messages postés
436
Date d'inscription
dimanche 20 janvier 2002
Statut
Membre
Dernière intervention
2 février 2010
2
Bonjour -;)
Attention la méthode print te rajoute des guillemets...
Voila un exemple

Private Sub Form_Load()
CopyStream "e:\test.txt", "c:\momo.txt"
End Sub

Private Sub CopyStream(sSource As String, sDestination As String)
Dim stTmp As String
Open sSource For Input As #1
Open sDestination For Output As #2
Do While Not EOF(1)
Line Input #1, stTmp
Print #2, stTmp
Loop
Close #1
Close #2

End Sub
Je pense qu'il y a surement une méthode plus adapté pour copier un fichier d'un endroit à un autre... mais j'ai pas creuser la question. On peut utiliser l'objet Scripting.FileSystemObject mais bon...

Bon Courage @+
0
Messages postés
1471
Date d'inscription
mardi 5 février 2002
Statut
Membre
Dernière intervention
20 octobre 2014
12
pour faire une copie de fichier, tu ne peux pas tout betement faire
shell "copy c:\toto.txt d:\toto_copy.txt"

:clown) BasicInstinct :clown)
0
Messages postés
436
Date d'inscription
dimanche 20 janvier 2002
Statut
Membre
Dernière intervention
2 février 2010
2
-;)
Ton truc fonctionne pas !

ça oui :

FileCopy "e:\test.txt", "d:\jojo.txt"
@+, VIC
0
Messages postés
436
Date d'inscription
dimanche 20 janvier 2002
Statut
Membre
Dernière intervention
2 février 2010
2
Encore moi...
Autrement pour utiliser la méthode Shell :
Shell "c:\windows\command.com /c copy e:\test.txt d:\new.txt", vbHide

Bien sur il faut pas être sous XP.. ou 2000 vue que
c:\windows\command.com n'existe pas

@+
0
Messages postés
5
Date d'inscription
jeudi 17 octobre 2002
Statut
Membre
Dernière intervention
9 juillet 2003

salut,

Enfait, sous XP, il faut mettre c:\windows\system32\command.com

Comme VicoLaChips2 te l'a dit, si tu peux utiliser
Scripting.FileSystemObject --> c'est facile d'utilisation et c'est assez performant.

Aplus

JLouis
0