-1

我创建了一个空文件并尝试将内容从现有文件复制到新创建的文件中。当我这样做时,我得到一个 IOexception

private void button1_Click(object sender, EventArgs e)
    {

        String test = textBox1.Text.ToString();

        if (string.IsNullOrEmpty(textBox1.Text))
        {
            MessageBox.Show("Enter the filename");

        }
        else
        {
            StreamWriter File = new StreamWriter(test);
            MessageBox.Show(test + " Has been created");
        }
    }
private void button2_Click(object sender, EventArgs e)
    {
        String test = textBox1.Text.ToString();

        try
        {
            File.Copy(@"D:\\Study this.txt", test);
        }
        catch (IOException)
        {
            MessageBox.Show("IO error occured");
        }

    }
4

2 回答 2

1

您将需要Streamelse语句 add File.Close();中关闭 so 这将释放新创建的文件。这部分代码现在看起来像这样:

StreamWriter File = new StreamWriter(test);
File.Close();
MessageBox.Show(test + " Has been created");
于 2013-08-21T09:53:00.037 回答
1

StreamWriter File = new StreamWriter(test);用下面的替换行

using (File.Create(test)) ;

或与

using (StreamWriter writer = new StreamWriter(test)){}

上述更改的原因是您需要在复制之前正确关闭打开的流对象。

using块将为您处理。

于 2013-08-21T09:53:59.577 回答