|
|
Cours Visual Basic N°5
|
| Auteur : Christophe Darmangeat |
On n’abordera pas ici la manière dont on peut attaquer des fichiers complexes (comme des bases de données), via des contrôles ad hoc. Ce petit chapitre a pour seul but de vous fournir un outil simple et universel pour stocker et récupérer des données d’une exécution à une autre, au travers d’un genre de fichier qu’on a déjà dû vous présenter amplement en C : le fichier Texte.
Il existe des fichiers dits " à accès aléatoire " et des fichiers dits " binaires ", mais il faut faire vite, et on se concentrera ici sur le type le plus ordinaire : le fichier " séquentiel ". C’est du texte ordinaire, avec généralement comme extension .txt.
Ouvrir un fichier
Pour ouvrir un fichier, vous devez connaître son nom (avec éventuellement son chemin d’accès), dire ce que vous voulez en faire (lire, ou écrire ?) et lui attribuer un numéro arbitraire. Cela donnera ainsi :
Bien sûr, si vous utilisez plusieurs fichiers, mieux vaut leur attribuer chacun un numéro différent…
For Input signifie qu’on ne veut que lire le fichier. Pour y écrire, on utilisera For Output, et pour ajouter simplement quelque chose à la fin, For Append. Autrement dit, il faut choisir, on ne peut faire qu’une seule chose à la fois.
Lire un fichier
Il y a trois possibilités. Deux que je ne cite que pour l’anecdote, et une vraiment utile. Pour l’anecdote, donc :
Met dans MaVariable les 100 caractères suivants du fichier numéro i, à partir de la dernière lecture. Sinon :
Toto récupère la longueur du fichier texte, exprimée en caractères (fonction LOF). On met ensuite tout le fichier d’un coup dans MaVariable.
Ce qu’il faut utiliser :
C’est de loin le plus utile, mais cela suppose que le fichier texte soit correctement organisé. C’est-à-dire que chaque ligne se termine par les caractères CR LF (vous n’avez pas besoin de vous tracasser pour cela, si vous avez vous-mêmes correctement créé le fichier texte). A ce moment-là, chaque lecture copie la ligne suivante dans MaVariable.
Si vous avez eu la bonne idée de bâtir votre fichier sous forme de champs de longueur fixe, il vous suffit ensuite d’envoyer les bons morceaux de MaVariable dans différentes variables via la fonction Mid. Et le tour est joué !
Je ne prends pas ici la place pour vous rappeler qu’en VB, comme dans tout autre langage de programmation, il existe des fonctions permettant de traiter les chaînes de caractères. Ces fonctions sont universelles, et Mid permet de récupérer dans une chaîne, à partir du caractère numéro i, les j caractères suivants.
Si vous voulez gagner de la place (mais perdre du temps à l’exécution), vous pouvez opter pour des champs de longueur variable, donc avec un caractère de séparation. A partir de MaVariable, il faudra donc programmer une boucle pour lire un à un les caractères, détecter le caractère de séparation et envoyer tout cela dans vos variables. Bref, c’est un plan foireux.
Ecrire dans un fichier
Ecrit dans le fichier i le contenu de MaVariable.
Nous vous informons que ce cours constitue une œuvre protégée en France par le Code de la Propriété Intellectuelle, et à l’étranger par les conventions internationales en vigueur sur le droit d’auteur. La violation de l’un des droits d’auteur de l’œuvre est un délit de contrefaçon. Il est donc interdit, à titre privé ou public, de reproduire, copier, vendre, revendre ou exploiter, que ce soit dans un but commercial ou purement gratuit, ce cours, sauf accord exprès et préalable de son auteur.
| RESSOURCES GRATUITES |
| |
| |
| |
| |
| |
| |
| |
| PRATIQUE / OUTILS |
| |
| |
| |
| |
| TÉLÉCHARGEMENTS |
| |
| |
| |
| INFOS SITE |
| |
| |
| |
| |
| PARTENAIRES |
| |
| |
| |
| |
| |
| |
| |
|
|