Lire un fichier en VB

Fermé
davdoo91 Messages postés 31 Date d'inscription jeudi 19 avril 2007 Statut Membre Dernière intervention 3 décembre 2009 - 2 mai 2008 à 17:53
 amigo - 2 mai 2008 à 18:34
Bonjour,

Alors voila je débute dans le langage du Visual Basic, et j'ai un petit souci lors de la compilation des lignes suivantes :

Dim varname As String
Open "C:\Documents and Settings\dada\Mes documents\test1.doc" For Output As #1 'Len = nbcara
Get #1, , varname
MsgBox varname

le compilateur me signale : "mode d'acces au fichier incorerect", est ce que quelqu'un sait pourquoi?
Et en meme temps je voulais savoir coment on introduit l'instruction len SVP

Merci
A voir également:

2 réponses

LeGenevois Messages postés 1 Date d'inscription vendredi 2 mai 2008 Statut Membre Dernière intervention 2 mai 2008
2 mai 2008 à 18:26
Problème 1:
Tu ouvres le fichier en écriture (For Output As #1) et ensuite tu places une instruction de lecture (Get #1).

Si tu veux simplement écrire dans un fichier, tu peux t'inspirer de quelque chose comme ceci:
Dim varname As String
Dim ligne As String
Dim indice As Integer
varname = "Exemple avec Print"
Open "C:\test1.txt" For Output As #1
For indice = 1 To 5
ligne = varname & " - ligne " & indice
Print #1, ligne
Next
Close #1

qui te donnera

Exemple avec Print - ligne 1
Exemple avec Print - ligne 2
Exemple avec Print - ligne 3
Exemple avec Print - ligne 4
Exemple avec Print - ligne 5
0
bonjour,

Tu te mélange les pniceaux, relis bien la doc sur l'instruction Open.
Dans ton cas, tu ouvres le fichier en mode Output, ce qui veut dire que tu crée un fichier à accès séquentiel en mode écriture, si le fichier existe il sera mis à zéro.
Ensuite tu utilise l'instruction Get qui veut dire lire, applicable pour les fichiers ouvert en mode Random.
Mais de toutes façons, tu ne peux qu'écrire dans ce fichier, puisque ouvert en mode Output (sortie).
D'où l'erreur: tu a mélange les modes d'accès et les instructions.

L'instruction Len est optionnelle, dans ton cas plus spécialement elle représente la taille de la zone tampon à utiliser pour écrire les données dans le fichier.

Pour résumer, voici comment faire:

Dim varname As String
Open "C:\Documents and Settings\dada\Mes documents\test1.doc" For Output As #1
varname="Ceci est un test d'écriture"
Print #1, varname
varname="dans un fichier de type texte."
Print #1, varname
Close #1


Ouvre le fichier test1.doc avec ton éditeur préféré et vérifie le contenu.

A+.
0