我是c#的新手。如果我在ProjectFolder\file.txt
中有一个文件,我该如何在代码中访问它。例如。我想用代码读取文件。我记得路径看起来像application://.../file.txt
,但我不记得究竟是什么
答案 0 :(得分:1)
只需将文件的复制到输出目录属性设置为复制如果更新:
从输出目录运行程序时,只需从当前目录中打开文件:
string text = File.ReadAllText("file1.txt");
答案 1 :(得分:1)
大多数人的解决方案是指访问文件系统上的文件。但是,您提到了应用程序本地URI,这让我觉得您在谈论嵌入式资源。这些资源不是文件系统上的单独文件。所以,我的帖子的其余部分就是关于那个。
如果要在程序集中包含该文件,则必须更改文件的属性,将BuildAction属性更改为Embedded Resource。
从那里,您可以使用资源路径访问它,如您所述(请参阅包URI:http://msdn.microsoft.com/en-us/library/aa970069.aspx),或者您可以通过以下方式访问它:
var stream = System.Reflection.Assembly.GetExecutingAssembly()
.GetManifestResourceStream("ConsoleApplication1.blah.txt");
var reader = new StreamReader(stream);
Console.WriteLine(reader.ReadToEnd());