gpt4 book ai didi

c# - 在 C# 中第二次创建文件时会抛出异常

转载 作者:行者123 更新时间:2023-11-30 15:01:54 24 4
gpt4 key购买 nike

我正在使用文件流创建一个文件,但在此之前我正在应用 if 条件来查看文件是否存在。当我单击按钮时,如果假设文件存在,它会删除该文件。没关系,如果我再次按下按钮,文件就会被创建。第一次使用效果很好。

现在文件已创建,如果我再次按下按钮,它应该会被删除,但它会抛出一个异常,指出*进程无法访问文件“C:\Hello1”,因为它正被另一个人使用过程。*

下面是我的代码

     private void button2_Click(object sender, EventArgs e)
{
string fileName = @"C:\Hello1";
if

(File.Exists(fileName))
{
File.Delete(fileName);
MessageBox.Show("File is deleted");
}
else
{
FileInfo createFile = new FileInfo(fileName);
FileStream create = createFile.Create();
MessageBox.Show("Created");

}
}

所以为什么我不能删除第二次,我的文本文件也没有打开,但仍然显示异常。

最佳答案

您永远不会关闭创建文件的流。将您的 FileStream 放在 using 语句中,这将自动清理打开的文件句柄。

using(FileStream create = createFile.Create())
{
//code here
}

关于c# - 在 C# 中第二次创建文件时会抛出异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13405626/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com