-1

每次我的主程序运行时,它都会将大约 6 行(总共大约 50 个字符)写入日志文件。

如何防止此文件无休止地增长?我想将文件保持在 2MB 以下,并将新文本添加到文件末尾并删除文件开头的文本。

4

2 回答 2

1
FileInfo txtfile = new FileInfo(nameOfFile);
if (txtfile.Length > (2 * 1024 * 1024))       // ## NOTE: 2MB max file size
{
    var lines = File.ReadAllLines(nameOfFile).Skip(10).ToArray();  // ## Set to 10 lines
    File.WriteAllLines(nameOfFile, lines);
}

只有当文件超过 2MB(大小,而不是磁盘大小)时,上面的代码才会运行。它将从文件中删除前 10 行并将剩余的行写回文件中。

我已经设法通过一小段代码让它按照我需要的方式工作,并认为我会在这里分享它以帮助减少人们提出同样的问题。希望它能帮助有同样问题的人。

对于我的解决方案,我还没有发现此过程存在任何问题,但如果这不正确,请随时添加任何评论。

于 2013-10-07T10:51:33.647 回答
-3

对于 Web 应用程序,您还可以定义最大请求长度的值。

  <system.web>
    <httpRuntime maxRequestLength="15000" />
  </system.web>
于 2013-10-07T11:05:50.893 回答