Ouvrir un fichier texte [Résolu]

Messages postés
710
Date d'inscription
jeudi 20 février 2003
Dernière intervention
19 mai 2015
- 24 août 2005 à 18:27 - Dernière réponse :
Messages postés
710
Date d'inscription
jeudi 20 février 2003
Dernière intervention
19 mai 2015
- 24 août 2005 à 20:17
bonsoir
en cliquant sur un bouton,je voudrais ouvrir un fichier texte qui se trouve dans le même dossier que mon programme,comment procède t'on .
merci
@ plus
petchy
Afficher la suite 

10 réponses

Meilleure réponse
Messages postés
3140
Date d'inscription
vendredi 14 mai 2004
Dernière intervention
31 mars 2015
- 24 août 2005 à 19:31
3
Merci
c'est encore un peu vague.

bon je te le mets dans une ListView ligne par ligne comme exemple.







ListView1.ColumnHeaders.Add , , "nom"



Dim Zone As String



Open App.Path & "" & "essai.txt" For Input As #1

While Not EOF(1)

Line Input #1, Zone

ListView1.ListItems.Add , , Zone

Wend

Close #1


Daniel

Merci Gobillot 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Messages postés
3140
Date d'inscription
vendredi 14 mai 2004
Dernière intervention
31 mars 2015
- 24 août 2005 à 18:52
0
Merci
Open App.Path & "" & "essai.txt" For Input As #1

MsgBox LOF(1)

Close #1


Daniel
Messages postés
3758
Date d'inscription
mardi 23 septembre 2003
Dernière intervention
13 mars 2006
- 24 août 2005 à 18:53
0
Merci
Salut,
As-tu fait une tite recherche sur le forum et/ou dans les sources ?

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
Messages postés
710
Date d'inscription
jeudi 20 février 2003
Dernière intervention
19 mai 2015
- 24 août 2005 à 19:19
0
Merci
bonsoir à vous
CanisLupus j'ai fait une recherche sur le forum mais je n'ait pas trouver,j'ai peut etre mal fait la recherche
Merci Daniel pour ton code,mais il ne fonctionne pas,il m'affiche un MSGBOX
petchy
Messages postés
3140
Date d'inscription
vendredi 14 mai 2004
Dernière intervention
31 mars 2015
- 24 août 2005 à 19:24
0
Merci
et qu'est ce que tu voudrais faire avec ton fichier.

l'ouvrir c'est une chose mais ensuite ?

le lire ligne par ligne, le lire entièrement, le mettre dans une Listview,

tout est possible

Daniel
Messages postés
710
Date d'inscription
jeudi 20 février 2003
Dernière intervention
19 mai 2015
- 24 août 2005 à 19:26
0
Merci
oups j'ai oublier ,je voudrais le lire
Messages postés
31
Date d'inscription
samedi 18 novembre 2000
Dernière intervention
24 février 2006
- 24 août 2005 à 19:43
0
Merci
voiçi quelque chose de plus "pédagogique" et de plus "puriste" concernant l'ouverture pour écrire ou lire un fichier texte en mode séquentiel et en mode direct: (je l'avais déjà exposé à quelqu'un sur ce site le 15/06/05.)


regarde la fonction OPEN de Visual Basic.
tu as généralement 3 cas : ouvrir un fichier pour le lire, ouvrir un fichier pour y écrire dedans, ( ces deux cas sont caractérisés par ce qu'on appelle le mode séquentiel); et enfin ouvrir un fichier pour lire et/ou écrire ( ceci est le mode direct).

1°)
Le mode SEQUENTIEL comme son nom l'indique, on lit, ou on écrit ce fichier donnée après donnée.
Pour LIRE voir la fonction VB suivante:
OPEN <Ch.directeur du fichier à lire> FOR INPUT AS #1
ce qui veut dire: "ouvre le fichier XXX qu'on appelera dorénavant #1 (ou #2,#3,#4,....), pour y prendre des données les unes après les autres"
INPUT #1,ENR
ce qui veut dire: "prend la ligne en cours du fichier #1, et stock la dans la variable ENR"
CLOSE #1
ce qui veutt dire: "ferme ce fichier , et remet le compteur des lignes à zéro

Pour ECRIRE, c'est idem mais on tape OUTPUT au lieu de INPUT pour la ligne contenant OPEN, et on utilise PRINT au lieu de INPUT pour stocker la variable ENR

ATTENTION: Tout est question du format avec lequel le fichier à été écrit à l'origine, mais généralement tout est réalisable.
Si on veut intercaler une ligne dans un fichier déjà existant, il faut ouvrir le fichier à lire en #1 mode INPUT; et un nouveau fichier ,nommé différement, en écriture en #2 mode OUTPUT; il faudra lire dans #1 toutes les lignes avant, et les écrire dans #2, inscrire dans #2 la ligne à intercaler, puis lire le reste de #1 pour l'écrire dans #2.

PS : Voir aussi sous VB la fonction LINE INPUT.

2°)
Le mode DIRECT est pratique mais ne fonctionne pas du tout comme les 2 modes que je t'avais expliqué .
On utilise RANDOM pour ouvrir un fichier , et les instructions GET pour lire , et PUT pour écrire dedans.
Comment ça marche !??!

Ex: Tu veux stocker dans un fichier ton Nom,Prénom,Adresse,et Téléphone, et surtout tu veux pouvoir y accéder directement sans être obligé de lire tout le fichier.

Ces données tu vas les stocker ligne par ligne.
Tu as (en mode RANDOM) un peu plus de 32000 lignes disponibles.

Il est conseillé de passer par une variable Tampon (Ex: Dim ENR as String)
Le code est le suivant:

OPEN <Ch.directeur du fichier à écrire> FOR RANDOM AS #1
ENR=Nom
PUT #1,1,ENR
ENR=Prénom
PUT #1,2,ENR
ENR=Adresse
PUT #1,3,ENR
ENR=Téléphone
PUT #1,4,ENR
CLOSE #1

On à fait quoi ?? en language humain !!!!

On à écrit dans #1, à la ligne 1, la variable ENR, dans laquelle on avait stocké le Nom
On à écrit dans #1, à la ligne 2, la variable ENR, dans laquelle on avait stocké le Prénom
Etc,Etc,..........

Tu as compris ???

Maintenant, si tu veut ressortir ton N° de Téléphone, tu sais qu'il est stocké à la ligne 4, donc le code est le suivant:

OPEN <Ch.directeur du fichier à lire> FOR RANDOM AS #1
GET #1,4,ENR
CLOSE #1

A toi de faire les liens avec les textbox, listbox, combo, label..de tes Form.
Tu peux faire des boucles, et remplacer le N° de ligne par une variable, de manière à incrémenter automatiquement tes lignes.

PS: Si tu ouvres avec WordPad ou Notepad, Etc.. ce fichier, il sera bizarre à l'écran, ne le modifie surtout pas, tu ne pourrait plus l'ouvrir avec l'instruction OPEN comme on vient de faire.

2ème PS: Je ne peux pour le moment consulter ce site uniquement les Mercredis.


Salut !!!!
Messages postés
710
Date d'inscription
jeudi 20 février 2003
Dernière intervention
19 mai 2015
- 24 août 2005 à 19:50
0
Merci
merci EREF pour ses informations,qui sont forte intéressante


Daniel,j'ai tester ça n'a pas l'air mal,en fait j'ai créer un fichier d'aide en .txt et c'est pour que les personnes puissent le lire.
encore merci à vous
bonne soirée
petchy
Messages postés
3140
Date d'inscription
vendredi 14 mai 2004
Dernière intervention
31 mars 2015
- 24 août 2005 à 20:08
0
Merci
ce n'était qu'un exemple.

avec un TextBox en Multilignes et Scrollbar vertical, tu peux lire tout le fichier d'un coup.





Open App.Path & "" & "essai.txt" For Input As #1

Text1.Text = Input(LOF(1), #1)

Close #1


Daniel
Messages postés
710
Date d'inscription
jeudi 20 février 2003
Dernière intervention
19 mai 2015
- 24 août 2005 à 20:17
0
Merci
Re merci Daniel,c'est vrai que c'est plus lisible avec un textbox
petchy

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.