ReadAllText 对象的方法 My.Computer.FileSystem
允许从文本文件中读取。 如果文件的内容使用 ASCII 或 UTF-8 等编码,则可以指定文件编码。
如果要从具有扩展字符的文件读取,则需要指定文件编码。
注释
要逐行读取文本文件,请使用 OpenTextFileReader 对象的 My.Computer.FileSystem
方法。 方法 OpenTextFileReader
返回 对象 StreamReader 。 可以使用 ReadLine 方法逐行读取 StreamReader
对象的文件。 可以使用 EndOfStream 对象的 StreamReader
方法测试文件的结尾。
读取文本文件
通过使用ReadAllText
对象的My.Computer.FileSystem
方法,将文本文件内容读取到字符串中,并传递路径。 以下示例将 test.txt 的内容读入字符串,然后将其显示在消息框中。
Dim fileReader As String
fileReader = My.Computer.FileSystem.ReadAllText("C:\test.txt")
MsgBox(fileReader)
从已编码的文本文件中读取
使用ReadAllText
对象的My.Computer.FileSystem
方法将文本文件的内容读取到字符串中,并指定路径和文件编码类型。 以下示例将 UTF32 文件的内容读入字符串 test.txt,然后将其显示在消息框中。
Dim fileReader As String
fileReader = My.Computer.FileSystem.ReadAllText("C:\test.txt",
System.Text.Encoding.UTF32)
MsgBox(fileReader)
可靠的编程
以下条件可能会导致异常:
路径对于以下原因之一无效:它是一个零长度字符串,它只包含空格,它包含无效字符,或者它是设备路径(ArgumentException)。
路径无效,因为它是
Nothing
(ArgumentNullException)。该文件不存在(FileNotFoundException)。
该文件由另一个进程使用,或者发生 I/O 错误(IOException)。
路径超过系统定义的最大长度(PathTooLongException)。
路径中的文件或目录名称包含冒号(:)或格式无效(NotSupportedException)。
没有足够的内存将字符串写入缓冲区(OutOfMemoryException)。
用户缺少查看路径所需的权限(SecurityException)。
不要根据文件的名称决定文件的内容。 例如,文件Form1.vb可能不是 Visual Basic 源文件。
在应用程序中使用数据之前验证所有输入。 文件的内容可能不是预期内容,从文件读取的方法可能失败。