C# 窗体不加载

C# Form doesn't load

如果我有这段代码,我的表单不会加载

 private void Form1_Load(object sender, EventArgs e)
    {
           // Variables
        string currentDirectory = Directory.GetCurrentDirectory();
        string checkFile = ("mailingdir\check.txt");
        bool newFolder = (File.Exists(checkFile));

        if (newFolder)
            {
                 newFolder = true;
            }
        else
            {
                 newFolder = false;
                 File.Create("mailingdir\check.txt");
            }

如果我注释掉 File.Create("mailingdir\check.txt"); 它会立即加载。

我只是在试验,所以我认为我犯了初学者的错误。

只要路径存在,上面的代码就可以完美运行。将 "mailingdir" 替换为点,以便它引用应用程序的位置。 exe所在位置好像没有"mailingdir"

private void Form1_Load(object sender, EventArgs e)
    {
        string currentDirectory = Directory.GetCurrentDirectory();
        string workingDirectoryPlus1 = (currentDirectory + 1);
        string checkFile = (".\check.txt");
        bool newFolder = (File.Exists(checkFile));

        if (newFolder)
        {
            newFolder = true;
        }
        else
        {
            newFolder = false;
            File.Create(".\check.txt");
        }
    }

您的代码给出了 DirectoryNotFoundException,因为 mailingdir 不存在。

您必须先创建目录,然后再创建文件。

Directory.CreateDirectory("mailingdir");
File.Create("mailingdir\check.txt");