SÉRIE 4 *

 

Théorie

      Interface

    Série 1

     Série 2

       Série 3

       Série 4

. 
GESTION DES FICHIERS
(Tutoriels de Christophe Darmangeat)

.

 

Il peut être intéressant de manipuler des fichiers de texte par l'intermédiaire d'une application Visual Basic. Voici quelques notions à ce sujet.

Ouvrir un fichier

Pour ouvrir un fichier, on doit connaître son nom (avec son chemin d’accès), et lui attribuer un numéro arbitraire, dit numéro de canal. Cela donnera ainsi :

Exemple

Open "C:\TextFile.txt" For Input As #1

  • Chemin: C:\TextFile.txt entre guillemets

  • For Input: Indique qu'on ouvre le fichier en lecture

  • As #1: Numéro de canal (chaque fichier ouvert aura un numéro de canal différent)

Une fois le fichier ouvert en mode lecture, il faut ajouter une instruction qui permet de lire le texte. Voici une première méthode qui consiste à placer tout le texte dans une variable à l'aide de l'instruction LOF. Ça peut être intéressant pour les textes peu volumineux.

Exemple

Longueur = LOF(#1)
NomDeVariable = Input (Longueur, #1)

  • Longueur: LOF(#1): récupère le nombre total de caractères du fichier et le place dans Longueur.

  • NomDeVariable: Input (Longueur, #1) : On lit le nombre de caractéres indiqué par longueur et on le place dans la variable.

La seconde solution est la meilleure, à condition que des caractères de fin de ligne aient bien été placés à la fin de chaque ligne.  Vous verrez aussi que pour cette méthode, on utilise un tableau dynamique ouvert, c'est-à-dire une variable contenant plusieurs cases dont on peut augmenter le nombre au fur et à mesure des besoins.

Exemple

Dim T() as string
Open "C:\Monfichier.txt" As #1 For Input
i = -1
While Not Eof(1)
i = i + 1
Redim Preserve T(i)
Line Input #1, T(i)
Wend

  • Dim T() as string: Déclaration du tableau dynamique (les parenthèses donnent la possibilité de varier le nombre de cases qu'il contient).

  • Open...: Ouverture du fichier

  • i = -1: Initialisation de la variable comteur i

  • While Not Eof(1): une boucle qui dure tant qu'on n'a pas atteint la fin du fichier (EOF = END OF FILE)

  • I = i + 1: Augmentation de la valeur du compteur

  • Redim Preserve T(i): on redimensionne le tableau dynamique à la valeur de i en préservant son contenu

  • Line Input #1, t(i): On place le contenu de la ligne i dans la case T(i)

Écrire dans un fichier

Pour écrire dans un fichier, il faut commencer par l'ouvrir comme précédemment, mais cette fois avec une instruction différente.

Exemples

Open "C:\TextFile.txt" For Output As #1

  • Chemin: C:\TextFile.txt entre guillemets

  • For Output: Indique qu'on ouvre le fichier en écriture pour remplacer tout le contenu

  • As #1: Numéro de canal (chaque fichier ouvert aura un numéro de canal différent)

Open "C:\TextFile.txt" For Append As #1

  • Chemin: C:\TextFile.txt entre guillemets

  • For Append: Indique qu'on ouvre le fichier en écriture pour ajouter du contenu à la fin de celui déjà présent

  • As #1: Numéro de canal (chaque fichier ouvert aura un numéro de canal différent)

Une fois cette opération effectuée, il suffit d'une simple instruction pour écrire dans le fichier: PRINT.

Exemple

Print #i, NomDeVariable

On pourrait traduire cette instruction par Écrire dans le fichier #i le contenu de la variable.

Fermer un fichier

À la fin de chaque opération, il faut refermer le fichier afin d'éviter un message d'erreur Fichier déjà ouvert

Exemple

Close #i

 

Ce site est optimisé pour Microsoft Internet Explorer en 800x600.Copyright © {2003} {ESLS - Yvon Lemay}. Tous droits réservés.

 Design by
LOGOSLAND CREATIONS