1

我在 VS2010 的解决方案中添加了一个文本文件,并将其命名为 test.txt。

在我设置的文件属性中copy to output:alwaysbuild action: content

我现在如何在我的项目中打开这个文件?因此,如果用户按下按钮,它将打开文本文件。

我已经尝试了几种方法,例如File.open("test.txt")并且System.Diagnostics.Process.Start(file path))没有任何效果。

任何人都可以提供一些建议吗?

4

3 回答 3

3

由于您使用复制来输出文件被放置在与您的程序相同的目录中,因此您可以使用:

System.Diagnostics.Process.Start("test.txt");

或基于此MSDN 文章

string path = "test.txt";
using (FileStream fs = File.Open(path, FileMode.Open))
{
    byte[] b = new byte[1024];
    UTF8Encoding temp = new UTF8Encoding(true);

    while (fs.Read(b, 0, b.Length) > 0)
    {
        textBox1.Text += (temp.GetString(b));
    }
}
于 2012-06-21T02:57:00.263 回答
2

嗯...我刚试过System.Diagnostics.Process.Start("TextFile1.txt"),它奏效了。您可以尝试以下方法:

        System.Diagnostics.Process proc = new System.Diagnostics.Process();
        proc.StartInfo.FileName = "TextFile1.txt";
        proc.Start();

如果这仍然不起作用,请转到您的 \bin\Debug(或 \bin\Release,如果您在 Release 配置中运行)并确保该文本文件实际上与您的 .exe 位于同一位置。

于 2012-06-21T02:54:33.357 回答
2

StreamReader 呢?

using (StreamReader sr = new StreamReader("TestFile.txt"))
            {
                String line;
                // Read and display lines from the file until the end of
                // the file is reached.
                while ((line = sr.ReadLine()) != null)
                {
                    Console.WriteLine(line);
                }
            }

http://msdn.microsoft.com/en-us/library/db5x7c0d.aspx

于 2012-06-21T02:56:05.540 回答