从文本文件中删除/编辑/添加一行文本

时间:2013-08-02 07:27:33

标签: vb.net replace text-files

我的起始代码将读取文本文件中的所有行并将它们放在数组中

Public textArray As String()
textArray = File.ReadAllLines("textfile.txt")

我希望能够删除一行文本,编辑一行文本并在文本文件中添加一行文本。我的想法是在行中显示所有文本行,我可以单击一行,文本将放在文本框中,从该文本框我可以编辑文本。 删除,编辑和添加将是三个单独的按钮。

我需要一个启动代码,我对如何启动它感到困惑。

2 个答案:

答案 0 :(得分:1)

列表框非常适合您的任务。加载文件就像使用项集合ListBox1.Items.AddRange(File.ReadAllLines("textfile.txt"))的AddRange方法一样简单。

使用File.WriteAllLines File.WriteAllLines("textfile.txt", ListBox1.Items)保存数据同样简单。

要编辑数据,您可以使用按钮并读取列表框中的选定行,或者您可以处理选定的indexchanged事件

答案 1 :(得分:0)

我建议您使用StreamreaderReadLine()来阅读所有行,并List来保存它们。

所以阅读+保存的代码是:

Dim lineList As New List(Of String)()

Dim sr As StreamReader = New StreamReader(path)

    Do While sr.Peek() >= 0
         lineList.add(sr.ReadLine())
    Loop

然后在表单中添加一些标签(带文字):

For i as Integer = 0 to lineList.Count - 1
    Dim Label as New Label
    lineLabel.Text = lineList.Item(i)
    lineLabel.Location = New Point(0, 50 * i) 'you can change the 50 to whatever value you want
    Me.Controls.Add(Label)
    AddHandler Label.Click, AddressOf Me.Label_Click 'here we add a handler for the label-clicks
Next

处理程序将如下所示:

 Private Sub Label_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
    'handle the label clicks here
 End Sub