来自TXT文件的VB 2010数组

时间:2014-10-10 15:46:04

标签: arrays vb.net string

我需要创建打开文本文档的程序,并为从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

任何人都可以帮助我吗?感谢。

3 个答案:

答案 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()