尝试将其设置在哪里,单击一个按钮,它允许您选择目录,目录,然后该目录.file,由特定行更改。目前的代码。对不起,我是个菜鸟。
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim dialog As New OpenFileDialog()
If DialogResult.OK = dialog.ShowDialog Then
TextBox1.Text = dialog.FileName
Dim Directory1 As String
Directory1 = Trim(TextBox1.Text)
Dim Item1 As String
Item1 = Trim(TextBox2.Text)
Dim thefile As String = Directory1
Dim lines() As String = System.IO.File.ReadAllLines(Directory1)
// This gets the error. Item1.
// {"Index was outside the bounds of the array."}
lines(2) = Item1
System.IO.File.WriteAllLines(thefile, lines)
End If
End Sub
答案 0 :(得分:1)
问题是文件没有在数组lines()
上分配足够的行,可能是因为System.IO.File.ReadAllLines(Directory1)
读取少于三行。尝试使用超过3行的文件,它应该可以工作。
你也可以这样做(对不起,我不是vb.net编码器,所以我的语法可能有误):
If lines.Length < 3 Then
ReDim Preserve lines(2)
End If
lines(2) = Item1
我不确定你想用这个来实现什么,所以我不能给出“解决方案”。这只是让你的代码工作的“补丁”。
根据评论中的要求,如果您希望在变量中更改行(从{0}开始,从{0开始),则需要执行此操作:
TextBox3.Text