使用相对路径将文件添加到解决方案

时间:2012-06-21 02:48:30

标签: c#

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

在文件的属性中,我设置了copy to outputalwaysbuild actioncontent

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

我尝试了几种方法,例如File.open("test.txt")System.Diagnostics.Process.Start(file path)),但没有任何方法可行。

有人可以提供一些建议吗?

3 个答案:

答案 0 :(得分:3)

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

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

或基于此MSDN article

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));
    }
}

答案 1 :(得分:2)

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

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

如果仍然无效,请转至\ bin \ Debug(如果在Release配置中运行,则转至\ bin \ Release),并确保文本文件与.exe实际位于同一位置。

答案 2 :(得分: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