我的起始代码将读取文本文件中的所有行,并将它们放在数组中
Public textArray As String()
textArray = File.ReadAllLines("textfile.txt")
我希望能够删除一行文本,编辑一行文本并将一行文本添加到文本文件中。我的想法是在行中显示所有的文本行,我可以单击其中一行,文本将被放置在一个文本框中,从该文本框我可以编辑文本。删除、编辑和添加将是三个独立的按钮。
我需要一个启动代码,我对如何启动这个感到困惑。
列表框非常适合您的任务。加载文件就像使用items集合ListBox1.Items.AddRange(File.ReadAllLines("textfile.txt"))
的AddRange方法一样简单。
使用File.WriteAllLines、File.WriteAllLines("textfile.txt", ListBox1.Items)
保存数据同样简单。
要编辑数据,您可以使用按钮读取列表框中的选定行,也可以处理选定的索引更改事件
我建议使用Streamreader
和ReadLine()
读取所有行,使用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