Gros Probleme avec "input line" qui me lit tout le fichier au lieu de la ligne s

merci - 5 sept. 2001 à 17:59
 TUNISIEN - 6 sept. 2001 à 10:06
Bonjour,
J'ai des fichiers a analyser.
Pour cela j'ouvre les fichiers par Open et je lit ligne par ligne grace a la commande
Line Input. Le probleme est que Line Input ne lit pas une ligne mais tous le fichier.
La raison vient du fait que dans le fichier je n'ai pas Chr(13) comme fin de ligne mais Chr(10).

Est-ce que qqn peut m'aider à résoudre ce probleme sans changer le fichier.
Merci d'avance

2 réponses

RememberTheKing
5 sept. 2001 à 18:27
Soit ton fichier contient seulemnt un LineFeed, soit il ne contient rien en fin de ligne. Ce dernier cas m'étonnerai car à l'édition tu n'aurais qu'une seule ligne.
Je te propose donc de lire l'ensemble du fichier dans une variable string, d'executer un Replace sur le VbLF et le remplacer par VBCRLF.
Tu réécrit ensuite et l'affaire est reglé.
Cela est très rapide.

A+
Bonjour,

Pour résoudre se problème tu dois utiliser la commande INPUT fonction

Exemple
Dans l'exemple suivant, l'instruction Input lit un fichier caractère par caractère et l'affiche dans la fenêtre Débogage. On suppose dans cet exemple que FICHTEST est un fichier texte contenant quelques lignes d'exemples de données.

Open "FICHTEST" For Input As #1 ' Ouvre le fichier.
Do While Not EOF(1) ' La boucle est effectuée jusqu'à la
' fin du fichier.
MonCar= Input(LONguer de l'enregistrement, #1) ' Lit un caractère.
Debug.Print MonCar ' Affiche dans la fenêtre
' Débogage.

Loop

Close #1 ' Ferme le fichier.
Rejoignez-nous