Améliorer recup contenu fichier texte dans listbox [Résolu]

Messages postés
251
Date d'inscription
samedi 19 novembre 2005
Dernière intervention
2 novembre 2010
- - Dernière réponse : Tyrell2
Messages postés
251
Date d'inscription
samedi 19 novembre 2005
Dernière intervention
2 novembre 2010
- 30 avril 2007 à 12:58
bonjour, le débutant est de retour...

voila mon problème du jour : je veux afficher le contenu d'un fichier texte dans une listbox
et la recuperation du texte se fait bien sauf que les lignes sont cotes à cotes et séparées d'un carré noir
plutot que de garder la mise en page du fichier texte d'origine.

que dois je faire pour améliorer la methode svp ?  et est ce que le composant listbox est le mieux pour recuperer ce genre d'info ?

voici comment je fais (inutile de preciser que je débute dans l'utilisation de ce genre de manip...) :

Dim IdentLog
As
New StreamReader(
"c:\test.txt")

Dim Line
As
String = IdentLog.ReadToEnd
ListBox1.Items.Add(Line)
IdentLog.Close()

merci d'avance.
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
Messages postés
7745
Date d'inscription
mercredi 1 septembre 2004
Dernière intervention
24 septembre 2014
3
Merci
Oui c'est normal, parce que tu lis en une seule fois le fichier et tu l'ajoute en une seule fois.

Chaque ligne de la listbox correspond à un item. Il te faut donc ajouter un item pour chaque ligne que tu veux dans la listbox.

Toi, ici, si j'ai bien compris, tu veux un item par ligne du fichier. Il te faut donc lire le fichier ligne par ligne dans une boucle, chaque ligne lue ajoutera un item à la listbox.

Regarde ce code :

        Dim IdentLog As New System.IO.StreamReader("c:\test.txt")
        Dim Line As String

        'Boucle de lecture
        Do
            ' Lecture d'une ligne
            Line = IdentLog.ReadLine
            ' Ajout de la ligne à la listbox
            ListBox1.Items.Add(Line)

        ' teste si fin de fichier, si oui sortie de la boucle
        Loop Until IdentLog.EndOfStream = True

        IdentLog.Close()
 

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 96 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_casy
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Dernière intervention
22 août 2014
0
Merci
Bonjour ;
Si tu envoies la totalité de ton fichier texte dans un seul élément de ta listbox, ma foi... !
Il te faut le lire ligne par ligne et envoyer séparément chaque ligne par additem...
Ou encore faire un split de ta variable Astring avec VBcrlf et envoyer un par un, dans ta listbox, chaque élément tu tableau généré par le Split.
Commenter la réponse de jmfmarques
Messages postés
251
Date d'inscription
samedi 19 novembre 2005
Dernière intervention
2 novembre 2010
0
Merci
simple, clair et EFFICACE !
merci casy , t'es l'homme de la situation.
Commenter la réponse de Tyrell2
Messages postés
251
Date d'inscription
samedi 19 novembre 2005
Dernière intervention
2 novembre 2010
0
Merci
bonsoir,

je reviens sur ce sujet avec une question complémentaire : comment afficher également les caractères accentués contenus dans le fichier texte ?
il ne sont pas pris en compte par defaut, et malgres mon ami google je trouve pas comment faire..

merci
Commenter la réponse de Tyrell2
Messages postés
7745
Date d'inscription
mercredi 1 septembre 2004
Dernière intervention
24 septembre 2014
0
Merci
peut-etre un problème de police

si ton fichier est au format DOS, il te falloir utiliser une police type Terminal

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
Commenter la réponse de cs_casy
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Dernière intervention
22 août 2014
0
Merci
un problème de police ou... un problème d'origine du fichier "texte" ... D'où vient-il et par quoi a-t-il été écrit ?
En d'autre termes : qu'y lis-tu en l'ouvrant avec le bloc-notes ? Y vois-tu alors les accents affichés "normalement" ou non ?
Commenter la réponse de jmfmarques
Messages postés
251
Date d'inscription
samedi 19 novembre 2005
Dernière intervention
2 novembre 2010
0
Merci
c'est un fichier vraiment basic créé par mes bons soins via "clique droit / nouveau document texte" dans l'exploreur windows
et dont le seul but est de m'entrainer (m'apprendre) à manipuler sous vb .

en gros il contient :

poste masterisé société

et donc tous les "é" sautent dans la recup dans la listbox
Commenter la réponse de Tyrell2
Messages postés
251
Date d'inscription
samedi 19 novembre 2005
Dernière intervention
2 novembre 2010
0
Merci
bonjour,


pour info c'est résolu (grace à ce forum d'ailleurs)


voici ce qu'il fallait faire pour garder les caractères accentués :


Dim IdentLog
As
New StreamReader(
"c:\windows\identité.log", System.Text.Encoding.Default)


merci. 
Commenter la réponse de Tyrell2

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.