[VB] FileCopy + Lecture du fichier

[Résolu/Fermé]
Signaler
Messages postés
9
Date d'inscription
mardi 19 mai 2009
Statut
Membre
Dernière intervention
31 mai 2009
-
Messages postés
9
Date d'inscription
mardi 19 mai 2009
Statut
Membre
Dernière intervention
31 mai 2009
-
Bonjour à toutes et tous,


Voici mon problème:

Mon application doit parcourir tous les fichiers d'un répertoires, et lire le contenu de certains fichiers (en fonction du format et du nom du fichier), aucun problème jusque la.

Ces fichiers sont au format HTML. Et j'aimerais copier le contenu de ces fichiers dans une variable.


Afin de pouvoir avoir les balises et tous le contenu (dont j'ai besoin), je copier le fichier dans un fichier .TXT temporaire.


FileCopy Fichier.Path, "C:\WORK\ARCHIES_ATTEST\TEMP_ARCHIES.TXT"

Je dois ensuite lire le fichier temporaire (TEMP_ARCHIES.TXT) ligne par ligne afin de mettre son contenu dans une variable :

Open "C:\WORK\ARCHIES_ATTEST\TEMP_ARCHIES.TXT" For Input As #1
cptLig = 0
Contenu = ""

While Not EOF(1)
Input #1, a$
strLine = a$
Trim strLine

Contenu = Contenu & strLine

cptLig = cptLig + 1
Wend


Mais la ligne d'ouverture du fichier (la première du code ci-dessus) me retourne toujours l'erreur (File already open). Évidemment vu que je viens de faire le "FileCopy". Mais comment faire pour contourner ce problème?

Je n'ai pas de Fichier ouvert réellement, j'ai juste copier un fichier à un certains emplacements... Je ne comprends pas trop.

Merci d'avance pour votre aide

2 réponses

Messages postés
17094
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
15 octobre 2021
906
et si tu fais "close #1" avant le open ?
Messages postés
9
Date d'inscription
mardi 19 mai 2009
Statut
Membre
Dernière intervention
31 mai 2009

J'avais tester avec un close juste avant.
Mais le fichier n'est pas réèllement ouvert.

Jusqu'à cet endroit du programme, je ne fais que parcourir un répertoire et lire le nom du fichier.

Donc je n'avais rien à fermer, et je ne comprends pas pourquoi cette erreur.

Cependant j'ai trouver la solution, je l'ai ouvert en tant que FreeFile, et ca a fonctionné.


Merci quand même pour ton intervention.