写入文件到指定文件夹

Writing a File to the Specified Folder

这个问题与我的另一个问题相结合:Write a text file to a sub-folder

这一次,我有一个程序,它有一个文本文件夹来打开一个文件,然后从该文件中提取数据。然后我说保存到哪里就可以保存了

private void btnExtract1_Click(object sender, EventArgs e)
{
    btnExtract1.Enabled = false;
    string path = txtSave1.Text;

    string file1;
    using (StreamReader reader = new StreamReader(File.OpenRead(txtFile1.Text)))
    using (StreamWriter writer = new StreamWriter(path))
    {
        while ((file1 = reader.ReadLine()) != null)
        {
            file1 = file1.Replace("\"", string.Empty);
            file1 = file1.Substring(0, 8);

            line_number1 += 1;

            if (line_number1 >= 1)
            {
                writer.WriteLine(file1);
            }
        }
    }
    btnExtract1.Enabled = true;
}

private void btnSave1_Click(object sender, EventArgs e)
{
    DialogResult result = savefile1.ShowDialog();
    txtSave1.Text = savefile1.FileName;
}

不,它没有保存在该文件夹中。事实上,它中断于:

using (StreamWriter writer = new StreamWriter(path))

出现此错误:

A first chance exception of type 'System.IO.DirectoryNotFoundException' occurred in mscorlib.dll

可能出了什么问题?

你检查过你的路径是什么样子的吗?也许你没有正确转义 \ 或者你的路径中有一些无效字符。

我犯了一个菜鸟错误,我忘了说要另存为什么文件。

using (StreamWriter writer = new StreamWriter(path))

其中 path 等于用户想要的任何值 - 在我的例子中它被设置为 C:\temp\。我还没有设置 SaveFileDialog 保存为任何默认名称。