使用WPF打开文本文件

woo*_*ddy 9 .net c# wpf visual-studio-2010 text-files

我在项目根文件夹中创建了一个文本文件.现在,我正在尝试使用Process.Start()方法从外部启动该文本文件.

我在这里遇到的问题是文件路径不正确,Process.Start()无法找到此文本文件.我的代码如下:

Process.Start("Textfile.txt");
Run Code Online (Sandbox Code Playgroud)

那么我应该如何正确引用该文本文件?我可以使用相对路径而不是绝对路径吗?谢谢.

编辑:如果我将上面的代码更改为此,它会工作吗?

string path = Assembly.GetExecutingAssembly().Location;
Process.Start(path + "/ReadMe.txt");
Run Code Online (Sandbox Code Playgroud)

Ale*_*Aza 14

Windows需要知道在哪里找到该文件,因此您需要以某种方式指定:

使用绝对路径:

Process.Start("C:\\1.txt");
Run Code Online (Sandbox Code Playgroud)

或者设置当前目录:

Environment.CurrentDirectory = "C:\\";
Process.Start("1.txt");
Run Code Online (Sandbox Code Playgroud)

通常CurrentDirectory设置为可执行文件的位置.

[编辑]

如果文件位于可执行文件所在的同一目录中,则可以使用如下代码:

var directory = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location);
var file = Path.Combine(directory, "1.txt");
Process.Start(file);
Run Code Online (Sandbox Code Playgroud)