如何在Windows窗体应用程序中访问文本文件

时间:2013-12-09 10:05:38

标签: c# io windows-forms-designer file-handling windows-applications

我已将一个文本文件添加到Windows窗体应用程序中并尝试访问此文件。

这是我的代码..

static void Main()
    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);

        System.String s = Application.StartupPath+"/Licence.txt";
        System.IO.FileInfo fi = new System.IO.FileInfo(s);

        if (fi.Exists)
        {
            if (fi.Length == 0)
            {
                Application.Run(new Form1());
            }
        }
    }

Licence.txt在我的项目文件夹中,但每次(fi.Exists)都是假的,程序从流程出来而没有显示Form1()窗口.. 请帮我。 提前谢谢..

4 个答案:

答案 0 :(得分:6)

使用此:

string s = Path.Combine(
  Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location),
  "Licence.txt");

不要尝试手动组合路径,因为你必须处理路径分隔符...使用内置函数要好得多!

最后记得在项目中的 License.txt 文件中设置Copy to Output属性。

答案 1 :(得分:1)

不使用字符串连接,请使用Path.Combine()

System.String s = Path.Combine(Application.StartupPath,"Licence.txt");

答案 2 :(得分:1)

[1]问题是它在你的项目文件夹中的位置:) Application.StartupPath进入调试模式

  

yourProject \ BIN \调试

是你的文件吗?

尝试逐步调试并查看您获得的路径以及文件是否存在

[2]您的窗口未显示,因为您错过了添加

  

Application.Run(new yourForm());

希望有所帮助:)

答案 3 :(得分:0)

string filePath = Path.GetFullPath(“Licence.txt”);

此文件应出现在安装文件夹中。这样你就可以得到文件路径。