Recherche dans un fichier texte et l'afficher dans un textbox

Résolu
keunene
Messages postés
68
Date d'inscription
samedi 5 avril 2014
Statut
Membre
Dernière intervention
16 mars 2022
- 25 nov. 2014 à 15:49
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
- 26 nov. 2014 à 18:56
Bonjour,

je voudrais faire un dictionnaire de recherche avec un fichier texte.
je voudrais savoir comment afficher la ligne qui contient le mot qu'on recherche dans un textbox.
ce code , je l'ai trouvé sur le net ,mais il ne me convient pas parcequ'il affiche tout le texte.
 Dim nbr_ligne As Integer = 0
Dim ligne As String
Dim sr As New StreamReader("C:\MYDIR\dico.txt")
RichTextBox1.Clear()
While sr.Peek <> -1
nbr_ligne += 1
ligne = sr.ReadLine()
RichTextBox1.AppendText("la ligne" & nbr_ligne & ": " & ligne & Environment.NewLine) 'pb retour à la ligne de l'affichage



End While
RichTextBox1.AppendText("Nombre de ligne=" & nbr_ligne)

merci!

5 réponses

cs_ShayW
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
56
25 nov. 2014 à 19:51
Bonjour
à essayer
Private list1 As New List(Of String)

Private Function GetLineNumber(searchingword As String) As Integer

For row As Integer = 0 To list1.Count - 1
If list1(row).Contains(searchingword) Then
Return row
End If
Next
Return -1
End Function
'à placer dans le event load de ta form
list1 = IO.File.ReadAllLines("the path of the file").ToList
dim line as integer
line = GetLineNumber("journal")
0
keunene
Messages postés
68
Date d'inscription
samedi 5 avril 2014
Statut
Membre
Dernière intervention
16 mars 2022

Modifié par keunene le 26/11/2014 à 12:13
merci infiniment!
j'ai essayé de l'adapter comme ceci mais il m'affiche seulement la ligne .quand je disais la ligne, je voulais parler de ce que contient la ligne et non la ligne elle_même
 Private list1 As New List(Of String)

Private Function GetLineNumber(searchingword As String) As Integer

For row As Integer = 0 To list1.Count - 1
If list1(row).Contains(searchingword) Then
Return row
End If
Next
Return -1
End Function
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'à placer dans le event load de ta form
list1 = IO.File.ReadAllLines("C:\MYDIR\compteur.txt").ToList
Dim line As Integer
line = GetLineNumber("financer")
Richtextbox1.Text = line
End Sub

comment pourrais je afficher donc le contenu? le principe est de faire un dictionnaire.
MERCI D'avance.
0
cs_ShayW
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
56
26 nov. 2014 à 13:57
remplace
Private Function GetLineContent(searchingword As String) As string

For row As Integer = 0 To list1.Count - 1
If list1(row).Contains(searchingword) Then
Return list1(row)
End If
Next
Return string.empty
End Function


 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'à placer dans le event load de ta form
list1 = IO.File.ReadAllLines("C:\MYDIR\compteur.txt").ToList
Dim line As string
line = GetLineContent("financer")
if line <> string.empty then
Richtextbox1.Text = line
end if
End Sub


je voudrais savoir comment afficher la ligne qui contient le mot qu'on recherche dans un textbox.

un mot entier ou un qui contient ce mot ?
conférence circonférence
0
keunene
Messages postés
68
Date d'inscription
samedi 5 avril 2014
Statut
Membre
Dernière intervention
16 mars 2022

26 nov. 2014 à 16:26
merci encore et et encore
ce code me convient exactement.
voici donc la mouture finale:
  Private list1 As New List(Of String)
Private Function GetLineContent(searchingword As String) As String

For row As Integer = 0 To list1.Count - 1
If list1(row).Contains(searchingword) Then
Return list1(row)
End If
Next
Return String.Empty
End Function

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

End Sub

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
'à placer dans le event load de ta form
list1 = IO.File.ReadAllLines("C:\MYDIR\compteur.txt").ToList
Dim line As String
line = GetLineContent(TextBox1.text)
If line <> String.Empty Then
RichTextBox1.Text = line
End If
End Sub
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
236
26 nov. 2014 à 18:56
Bonjour,
Veux-tu bien alors libérer ce sujet ?
Un clic sur le tag RESOLU au niveau de ton tout premier message dans cette discussion.
Merci d'y penser
0