在内部创建新文件后无法重命名文件夹

时间:2019-09-06 14:23:19

标签: c# asp.net-core system.io.file

当我通过File.Create(indexFilePath)FileInfo的对象Create()方法在ASP.NET Core应用程序中在文件系统中创建新文件夹并在其中创建新的空index.html文件时,这是不可能的删除或重命名此文件夹一段时间。

如果我尝试在应用程序中执行此操作,则会得到IOException:拒绝访问路径'D:\ Temp \ Delete_test5'。

如果我尝试手动将其删除,则会出现警告窗口,并显示以下消息:无法完成该操作,因为其中的文件夹或文件已在另一个程序中打开

如果尝试手动删除内部文件,则会出现警告窗口,并显示以下消息:由于在iisexpress.exe中打开了文件,因此无法完成操作

在这种情况下创建后如何删除/重命名文件夹?

已编辑:

有用于生成文件的代码:

public static void CreateIndexHtmlFile(string folderPath)
{
    string indexFilePath = (folderPath.EndsWith(@"\") ? folderPath : folderPath + @"\") + "index.html";

    //if (Directory.Exists(folderPath) && !File.Exists(indexFilePath))
    //{
    //    File.Create(indexFilePath);
    //}

    DirectoryInfo dir = new DirectoryInfo(folderPath);
    FileInfo file = new FileInfo(indexFilePath);

    if (dir.Exists && !file.Exists)
    {
        file.Create();
    }
}

File.Create(indexFilePath);file.Create();都带来相同的问题。 file没有像DisposeClose

这样的方法

0 个答案:

没有答案