c#日志文件截断

时间:2009-01-30 15:00:30

标签: c#

我想创建一个创建和管理日志文件的类。我希望日志文件超过一定数量的文本行时被截断。是否有任何人对从文本文件开头删除行的最佳做法有任何建议。

3 个答案:

答案 0 :(得分:2)

除非这是针对课程作业的,否则为什么不使用可用的开源替代品呢? Log4net允许您在指定数量的日志文件之间滚动。

答案 1 :(得分:1)

简而言之:不要

长版

当达到行数限制时,创建一个新的日志文件,保留以前的日志文件,但删除之前的日志文件。

现在,您可以保证在任何给定时间都能获取n行日志文件。

答案 2 :(得分:1)

我在http://www.blackbeltcoder.com/Articles/files/a-convenient-logfile-class的C#中创建了一个简单的Logfile类。

但是,文件最后会被截断 - 而不是开头。因此,如果您截断文件,则会保留旧数据并丢失新数据。这可能不是你想要的。

我建议每隔一段时间删除一次文件,或者创建一个新文件。例如,您可以根据当前日期写入文件名,也可以根据每周只更改一次的日期等来写入文件名。