Fichier texte merci

cs_moi4975 Messages postés 109 Date d'inscription lundi 27 juin 2005 Statut Membre Dernière intervention 17 juillet 2007 - 2 août 2005 à 15:42
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 - 2 août 2005 à 19:21
salut a tous,

Voila je voudrai ouvrir le contenu d'un fihier texte et l'afficher en entier dans un textbox mon fichier texte contient plusieurs ligne,paragraphe etc... (un texte en fait lol)

Avec le code que j'utilise (en-dessous) il m'indique une erreur sur la ligne Get...

Quelqu'un saurait-il m'aider ???? merci

Private Sub cmdOpen_Click()
Dim intFile As Integer
Dim Valeur As String
intFile = FreeFile
Open "C:\Lecon16.txt" For Random As #intFile
Get #intFile, 1, Valeur
Text1.Text = Valeur
Close #intFile
intFile = MsgBox(" Ouverture réussie ! ")
End Sub

4 réponses

cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
2 août 2005 à 16:05
Salut,
Essaie :

Open "C:\Lecon16.txt" For Input As #intFile
Text1.Text = Input(LOF(intFile), #intFile)
Close #intFile

De cette manière, si ton fichier n'est pas trop grand, tu l'importeras directement en entier dans ta textbox.
Si c'est trop pour une textbox, essaie avec une richtextbox.(composants Microsoft Rich Textbox 6.0 (SP 6).)

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
0
cs_moi4975 Messages postés 109 Date d'inscription lundi 27 juin 2005 Statut Membre Dernière intervention 17 juillet 2007
2 août 2005 à 16:13
merci ca marche !!!
mais qu'estce que veut dire le "Input(LOF(intFIle),#intFile)"
0
cs_hassen Messages postés 338 Date d'inscription mardi 28 janvier 2003 Statut Membre Dernière intervention 4 novembre 2008
2 août 2005 à 16:14
oui c plus simple d'utiliser Microsoft Rich Textbox

RichTextBox1.FileName = "c:\lecon16.txt"

Hassen TUNISIE
0
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
2 août 2005 à 19:21
LOF(intFile) = taille de ton fichier en octets.
Avec Input(LOF(intFIle),#intFile) tu lis tout ton fichier d'un coup.

Tu pourrais lire octet par octet :
Dim intFile As Integer
Dim Valeur As String
intFile = FreeFile
Open "C:\Lecon16.txt" For Input As #intFile
do While not eof(intFile)
Valeur = valeur & Input(1,#intFile)
loop
textbox.text=valeur
close #intFile
C'est plus long.

Dans ce cas, si tu veux utiliser le get, l'équivalent serait :
Dim intFile As Integer
Dim Valeur As String
Dim tmp as string * 1
Dim i as long
intFile = FreeFile
Open "C:\Lecon16.txt" For Random As #intFile len = len(tmp)
for i = 1 to lof(intFile)
get #intFile, i, tmp
Valeur = valeur & tmp
next
textbox.text=valeur
close #intFile

La différence entre ces 2 derniers cas, c'est qu'avec random et get, tu peux lire l'octet ou le groupe d'octets que tu veux ou tu veux dans le fichier et qu'avec l'input(1,#intFile), tu lis en séquentiel sans possibilité de revenir au début sans réouvrir le fichier.

Dans ton cas, le plus simple et le plus rapide est la solution que je t'ai indiquée au début.

Bonne prog

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
0
Rejoignez-nous