我需要创建打开文本文档的程序,并为从txt到一个字符串的任何行添加新数组。我尝试使用此代码但无法正常工作:
Dim x As New List(Of String)
Dim o As New IO.StreamReader("c:\*.txt")
For Each a As String In o.ReadToEnd()
x.Add(a)
Next
任何人都可以帮助我吗?感谢。
答案 0 :(得分:3)
ReadToEnd()
将整个文件读入一个单独的字符串,因此您将无法遍历这些行。
让您的生活更轻松,并写下
Dim lines() As String = File.ReadAllLines("c:\myfile.txt")
这会将所有行读入一个包含一行代码的字符串数组中。
注意:文件名中的通配符不起作用!
如果您仍想使用StreamReader,请执行以下操作:
Dim lines = New List(Of String)()
Using reader = New StreamReader("C:\MyFile.txt")
While Not reader.EndOfStream
lines.Add(reader.ReadLine())
End While
End Using
Using
命令负责自动关闭阅读器。
答案 1 :(得分:0)
也许这对你有用。 。
Dim o As New IO.StreamReader("C:\PathTo\File.txt")
Dim x() As String = o.ReadToEnd.Split(CChar(Convert.ToChar(10) & Convert.ToChar(13)))
For Each elementX As String In x
Debug.WriteLine(elementX) ' display text from the file
Next
答案 2 :(得分:-1)
Dim r As New StreamReader(filename)
Dim x As New List(Of String)
TextBox1.Text = ""
Do While r.Peek > -1
x.add r.ReadLine
Loop
r.Close()