【问题标题】:Delete last N bytes from file从文件中删除最后 N 个字节
【发布时间】:2010-02-06 09:27:05
【问题描述】:

磁盘上有一个可能非常大的文件。有什么方法可以删除最后 N 个字节而不将剩余内容复制到另一个文件中?

【问题讨论】:

    标签: .net io


    【解决方案1】:

    这段 C# .NET 代码怎么样?

    FileInfo fi = new FileInfo("filename");
    FileStream fs = fi.Open(FileMode.Open);
    
    long bytesToDelete = 5000;
    fs.SetLength (Math.Max(0, fi.Length - bytesToDelete));
    
    fs.Close();
    

    【讨论】:

    • 同样的问题,但从文件的开头? (前 N 个字节)
    【解决方案2】:

    另外,如果你想在任意位置添加或删除字节:Insert, delete space at any place in file without making temporary file copy

    【讨论】:

      猜你喜欢
      • 2019-06-26
      • 2013-06-05
      • 1970-01-01
      • 2020-12-25
      • 2022-11-14
      • 1970-01-01
      • 2020-01-29
      • 1970-01-01
      • 2011-05-11
      相关资源
      最近更新 更多