【问题标题】:Read information from text file and display in listbox从文本文件中读取信息并显示在列表框中
【发布时间】:2012-10-24 17:04:31
【问题描述】:

我试图弄清楚如何让用户在一个表单中写入他们想要在列表框中的另一个表单上看到的信息。基本上,用户会写下他们想要的详细信息(标题、作者、股票、价格、小说或非小说),然后按记录详细信息,程序会在文本文件中搜索这些值,然后另一种形式会出现他们将在其中看到所有选定书籍的列表框。

这是我到目前为止的代码,它基本上读取文本文件信息并将其存储到一个数组中:

    Dim Title As String
    Dim Author As String
    Dim Stock As Integer
    Dim Price As Double
    Dim Fiction As String
    Dim NonFiction As String

Private Sub btnRecord_Click(sender As System.Object, e As System.EventArgs) Handles btnRecord.Click


    ''Read the information into a string''
    Dim objReader As New StreamReader("C:\Users\Books.txt")
    Dim fileString As String = objReader.ReadToEnd()
    objReader.Close()
    objReader.Dispose()

    ''Concert string into array''
    Dim Array As Char() = fileString.ToCharArray()
    Array(0) = CChar("BookName")

    ''Declare the string to hold the value''
    Dim resultString As String = ","

    ''Increment each item in the string''
    Dim curChar As Char
    For i As Integer = 0 To (Array.Length - 1)
        curChar = Array(i)
        If (Char.IsLetterOrDigit(curChar)) Then
            Array(i) = Chr(Asc(curChar) + 1)
        End If
    Next

    ''Conver the array back to string''
    Dim newString As String = New String(Array)

    ''Hide the details form when book inventory runs''
    Me.Hide()

    ''display inventory form''
    frmInventory.Show()

End Sub

【问题讨论】:

    标签: vb.net


    【解决方案1】:

    为了澄清,用户输入

    将标题变暗为字符串 将作者暗淡为字符串 将股票暗淡为整数 价格低至两倍 暗淡小说为字符串 将非小说类变暗

    你然后你搜索数据做文件“C:\Users\Books.txt”?

    因为,假设您是将所有书籍添加到文本文件中的人,并假设您将每本书放在自己的行中,并具有相同的属性,即

    书名、作者、价格等 下一本书,....等等

    那我不明白你为什么不做这样的事情......

      'Storing All Book Information Into One Object
       Public Structure BookDetails
           Dim Title As String
           Dim Author As String
           Dim Stock As Integer
           Dim Price As Double
           Dim Fiction As String
           Dim NonFiction As String
         End Structure
       sub ... 
        Dim theObjContents as new ArrayList
       Using objReader as new StreamReader("C:\Users\Books.txt")
    
    
        while objReader.endofstream = false
          theObjContents.add(objReader.readline)
        end while
    
       End Using        
    
        For each line in theObjContents
       'Check what you want
           if bookdetails.Title = line.split(whatever your delimiting character is").item(0)
    
        next
     end sub
    

    我不确定这是否能回答任何问题,如果我完全不满足您的要求,请告诉我。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-12-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-27
      • 2011-05-09
      相关资源
      最近更新 更多