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

Résolu
keunene Messages postés 72 Date d'inscription samedi 5 avril 2014 Statut Membre Dernière intervention 10 mars 2023 - 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 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
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 72 Date d'inscription samedi 5 avril 2014 Statut Membre Dernière intervention 10 mars 2023
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 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
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 72 Date d'inscription samedi 5 avril 2014 Statut Membre Dernière intervention 10 mars 2023
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 211
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
Rejoignez-nous