Bonjour à tous,
Je lis un fichier TXT ligne par ligne et je voudrais
afficher dans la meme fenetre (ou une autre fenetre)
des informations pour l'utilisateur. Voici mon code :
Me.OpenFileDialog1.Title = " Sélection d'un fichier AIS "
Me.OpenFileDialog1.Filter = "txt files (*.txt)|*.txt"
If Me.OpenFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
' Ouverture du fichier
Dim Fichier As StreamReader = New StreamReader(Me.OpenFileDialog1.OpenFile())
Form_Info_Processus.ProgressBar.Maximum = Fichier.BaseStream.Length
Form_Info_Processus.Show()
While Fichier.EndOfStream = False
If String.IsNullOrEmpty(Fichier.ReadLine()) = False Then
Form_Info_Processus.ListBox1.Items.Add(Fichier.ReadLine())
Form_Info_Processus.ProgressBar.Increment(Fichier.BaseStream.Position
End If
End While
Fichier.Close()
Else
MsgBox("Aucun fichier sélectionné", MsgBoxStyle.Exclamation, "Aucun Fichier")
End If
Pour résumer , j'affiche pour chaque ligne lu , son contenu dans
une liste box et j'incrémente de 1 la barre de progression.
Mes pbs sont les suivants :
1--> Tous s'affiche d'un seule coup , la fenetre d'information
s'affiche d'un seul coup , l'utilisateur ne voit pas le déroulement
du processus ligne par ligne.
Comment puis je resoudre ce probleme ?
2--> Lorsque je choisi mon vrai fichier TXT que je dois traiter
rien ne marche il fait 50 Mo, tous ce plante avec l'erreur sur ma
boucle while disant que Fichier.ReadLine()) = Nothing se qui ne devrait jamais
arriver comme mon While est While Fichier.EndOfStream = False ????
Je n'ai aucune idée pour resoudre se Pb ?
Merci d'avance de m'aider , car je suis à cours d'idée .
laurent
Partager