如何:在 Visual Basic 中将文本写入“我的文档”目录中的文件
通过 My.Computer.FileSystem.SpecialDirectories 对象可以访问一些特殊目录,如**“我的文档”**目录。
过程
在“我的文档”目录中写入新的文本文件
使用 My.Computer.FileSystem.SpecialDirectories.MyDocuments 属性来提供路径。
Dim filePath As String filePath = System.IO.Path.Combine( My.Computer.FileSystem.SpecialDirectories.MyDocuments, "test.txt")
使用 WriteAllText 方法将文本写入指定的文件。
My.Computer.FileSystem.WriteAllText(filePath, "some text", True)
示例
Try
Dim filePath As String
filePath = System.IO.Path.Combine(
My.Computer.FileSystem.SpecialDirectories.MyDocuments, "test.txt")
My.Computer.FileSystem.WriteAllText(filePath, "some text", False)
Catch fileException As Exception
Throw fileException
End Try
编译代码
将 test.txt 替换为您要写入的文件的名称。
可靠编程
这些代码再次引发在将文本写入文件时可能发生的所有异常。 通过使用 Windows 窗体控件(如可将用户选择项限制为有效文件名的 OpenFileDialog 组件和 SaveFileDialog 组件),可以减少发生异常的可能性。 但是,使用这些控件并不能杜绝出错。 在用户选择文件以及代码执行这两个时刻之间,文件系统可能会改变。 因此在处理文件时,几乎总是需要处理异常。
安全性
如果在部分信任的上下文中运行,则代码可能会因特权不足而引发异常。 有关更多信息,请参见 代码访问安全性基础知识。
此示例创建一个新文件。 如果应用程序需要创建文件,则该应用程序需要文件夹的“创建”权限。 权限是使用访问控制列表设置的。 如果该文件已经存在,则应用程序仅需要“写入”权限(它是一个权限较弱的特权)。 为更加安全起见,应尽可能在部署过程中创建文件,并且只授予对单个文件的“读取”特权,而不是授予文件夹的“创建”特权。 而且,更为安全的方法是将数据写入用户文件夹,而不是写入根文件夹或**“Program Files”**文件夹。 有关更多信息,请参见 ACL 技术概述。