如何:读取“我的文档”中的现有文本文件 (Visual Basic)

更新:2007 年 11 月

下面的代码示例读取“我的文档”文件夹中文本文件的内容,并将这些内容写入一个文件中。

示例

Dim filePaths As System.Collections.ObjectModel.ReadOnlyCollection(Of String)
Dim allText As String
Try
   filePaths = My.Computer.FileSystem.GetFiles _
   (My.Computer.FileSystem.SpecialDirectories.MyDocuments)
   For Each file As String In filePaths
      allText = My.Computer.FileSystem.ReadAllText(file)
      My.Computer.FileSystem.WriteAllText("bigfile.txt", allText, True)
   Next
Catch fileException As Exception
   Throw fileException
End Try

编译代码

将 "bigfile.txt" 替换为要写入的文件的名称。

可靠编程

所读取的文件必须是文本文件。

可以使用 OpenFileDialog 组件(Windows 窗体)SaveFileDialog 组件(Windows 窗体)减少发生与权限相关的运行时错误的可能性。

不要根据文件的名称来判断文件的内容。例如,文件 Form1.vb 可能不是 Visual Basic 源文件。

在应用程序中使用输入的数据之前,需验证所有的输入内容。文件的内容可能不是预期内容,并且用来读取该文件的方法可能失败。

安全性

若要读取文件,程序集需要由 FileIOPermission 类授予的特权级别。如果在部分信任的上下文中运行,则代码可能会因特权不足而引发异常。有关更多信息,请参见代码访问安全性基础知识。用户还需要该文件的访问权限。有关更多信息,请参见访问控制列表 (ACL)

请参见

参考

My.Computer.FileSystem.SpecialDirectories 对象

My.Computer.FileSystem.ReadAllText 方法

My.Computer.FileSystem.WriteAllText 方法

OpenFileDialog

SaveFileDialog