Loop through the lines of a text file in VB.NET

后端 未结 3 1984
猫巷女王i
猫巷女王i 2020-12-19 21:37

I have a text file with some lines of text in it.

I want to loop through each line until an item that I want is found*, then display it on the screen, in the form of

相关标签:
3条回答
  • 2020-12-19 21:59

    LOOPING AND GETTING ALL XML FILES FROM DIRECTORY IF WE WANT TEXTFILES PUT "*.txt" IN THE PLACE OF "*xml"

    Dim Directory As New IO.DirectoryInfo(Path)

        Dim allFiles As IO.FileInfo() = Directory.GetFiles("*.xml")
        allFiles = allFiles.OrderByDescending(Function(x) x.FullName).ToArray()
        Dim singleFile As IO.FileInfo
    
    
        For Each singleFile In allFiles
            'ds.ReadXml(singleFile)
            xd.Load(singleFile.FullName)
    
            Dim nodes As XmlNodeList = xd.DocumentElement.SelectNodes("/ORDER/ORDER_HEADER")
            Dim ORDER_NO As String = " "
            For Each node As XmlNode In nodes
                If Not node.SelectSingleNode("ORDER_NO") Is Nothing Then
                    ORDER_NO = node.SelectSingleNode("ORDER_NO").InnerText
                End If
            Next
    
        Next
    
    0 讨论(0)
  • 2020-12-19 22:00

    Here's a function that will spit back your string from the row that contains your search term...

      Public Shared Function SearchFile(ByVal strFilePath As String, ByVal strSearchTerm As String) As String
        Dim sr As StreamReader = New StreamReader(strFilePath)
        Dim strLine As String = String.Empty
    
        Try
            Do While sr.Peek() >= 0
                strLine = String.Empty
                strLine = sr.ReadLine
                If strLine.Contains(strSearchTerm) Then
                    sr.Close()
                    Exit Do
                End If
            Loop
    
            Return strLine
        Catch ex As Exception
            Return String.Empty
        End Try
      End Function
    

    To use the function you can do this...

     Dim strText As String = SearchFile(FileName, SearchTerm)
     If strText <> String.Empty Then
       Label1.Text = strText
     End If
    
    0 讨论(0)
  • 2020-12-19 22:07

    You can use the File.ReadLines Method in order to iterate throughout your file, one line at a time. Here is a simple example:

        Dim Term As String = "Your term"
        For Each Line As String In File.ReadLines("Your file path")
            If Line.Contains(Term) = True Then
                ' Do something...Print the line
                Exit For
            End If
        Next
    
    0 讨论(0)
提交回复
热议问题