【问题标题】:VB how to write listbox items to a text fileVB如何将列表框项写入文本文件
【发布时间】:2018-03-13 00:21:03
【问题描述】:

好的,所以我在 VB(使用 Visual Studio)中创建了一个个人待办事项列表程序,但我无法实现将列表框内的项目添加到文本文件的功能。

这是我尝试过的代码:

Private Sub btnAddItem_Click(sender As Object, e As EventArgs) 处理 btnAddItem.Click

    ''Adds item to the listbox.
    list.Items.Add(txtItem.Text)

    txtItem.Clear() ''Clears the textbox after adding item.
    txtItem.Select() ''Sets the cursor onto the textbox after adding item.

    Dim file As System.IO.StreamWriter
    file = My.Computer.FileSystem.OpenTextFileWriter("Test.txt", True)
    file.WriteLine(list.Items)
    file.Close()

End Sub

我也试过了; file.WriteLine(list.Items.Text) 但这不是该语句中的选项。

按钮不会是列表的保存方式,但我只是想让测试文件先正确写入。但是,如果我输入以下内容,则会创建测试文件: 测试 1 测试 2 test 3 进入列表框,Test.txt文件简单显示:

System.Windows.Forms.ListBox+ObjectCollection
System.Windows.Forms.ListBox+ObjectCollection
System.Windows.Forms.ListBox+ObjectCollection

任何帮助将不胜感激!

【问题讨论】:

    标签: vb.net visual-studio-2010 basic


    【解决方案1】:

    将所有项目添加到列表框后,您需要在循环中单独处理每个项目。

    Private Sub WriteListItems()
            Dim lst As String = ""
            For Each item As String In ListBox1.Items
                lst &= item & vbCrLf
            Next
            Debug.Print(lst)
    End Sub
    

    【讨论】:

      【解决方案2】:

      您需要循环您的ListBox 中的每个项目并将它们添加到您的Test.txt。你可以有它在单独的方法。

      Private Sub putItem()
          For Each i In list.Items
              Dim file As System.IO.StreamWriter
              file = My.Computer.FileSystem.OpenTextFileWriter("Test.txt", True)
              file.WriteLine(i)
              file.Close()
          Next
      End Sub
      

      如果您希望每次单击按钮都在 Test.txt 中添加项目,就像在您的示例中一样。您可以替换您的代码:file.WriteLine(list.Items)file.WriteLine(txtItem.Text) 并将 txtItem.Clear() 移动到 ButtonClick() 的末尾,以便在清除之前将 txtItem.Text 添加到文件中。

      list.Items.Add(txtItem.Text)
      
      Dim file As System.IO.StreamWriter
      file = My.Computer.FileSystem.OpenTextFileWriter("Test.txt", True)
      file.WriteLine(txtItem.Text)
      file.Close()
      
      txtItem.Clear() ''Clears the textbox after adding item.
      txtItem.Select() ''Sets the cursor onto the textbox after adding item.
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-04-20
        • 1970-01-01
        • 2013-02-18
        • 2017-01-09
        • 1970-01-01
        • 1970-01-01
        • 2020-06-01
        • 1970-01-01
        相关资源
        最近更新 更多