“IOException:磁盘上没有足够的空间。”虽然有足够的空间

时间:2012-03-05 10:23:25

标签: c# .net file-io save

我做了一系列操作(在本地磁盘上):

  1. 将文件复制到###。bak
  2. 将文件保存到###
  3. 删除文件###。bak
  4. 代码:

    File.Copy(filename, filename + ".bak");
    TextWriter writer = new StreamWriter(filename);
    writer.Write(content);
    writer.Close();
    File.Delete(filename + ".bak");
    

    在删除期间,我得到了例外:

    IOException: There is not enough space on the disk.
    at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
    at System.IO.File.InternalCopy(String sourceFileName, String destFileName, Boolean overwrite)
    

    两个文件的大小最大为几MB。我检查了 - 磁盘上有足够的可用空间(超过几GB)。 这种情况可能的原因是什么?

    这是一个桌面应用程序(WPF),在操作系统驱动器上运行,位于管理员帐户上。

2 个答案:

答案 0 :(得分:0)

您是否在与操作系统不同的硬盘上进行此操作? 也许你在驱动器D中有很多空间,但是当删除文件时,你实际上是在回收站中移动它,即在C盘中。 试着检查一下......

答案 1 :(得分:0)

您使用的是磁盘配额吗?如果是,可能在它失败的服务器上,那个帐户当时使用了大量磁盘。