[英]Get a file path C#
我有一个.txt文件,我需要在我的程序中读取。 目前我的目录硬编码如下:
file = new StreamReader(@"C:\Users\<username>\Documents\File.txt");
然而,这显然不适用于任何其他没有改变代码访问权限的PC,或者(通过一些奇怪的偶然事件)与原始代码相同的目录。
如何使用C#获取在程序中设置它的完整文件路径?
您可以在他们的Application Data目录中创建该文件(如果他们愿意,他们仍然可以找到它,但至少它不会像My Documents文件夹那样明显)。
如果要访问它,请使用Environment
类。 有一些方法可以为当前用户定位特殊文件夹,而无需使用硬编码路径:
var filePath = Path.Combine(Environment.GetFolderPath(
Environment.SpecialFolder.ApplicationData), "File.txt");
选项1 :
Application.StartupPath
可用于此目的。
它获取启动应用程序的可执行文件的路径,不包括可执行文件名。
将File.txt
与您的可执行文件一起保存。
选项2 :
使用Environment.SpecialFolder.ApplicationData
它提供的目录充当当前漫游用户的特定于应用程序的数据的公共存储库。
注意 :如果要限制用户查看File.txt的内容,则可能需要加密内容。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.