c#在不读取整个文件的情况下从文本文件的开头删除
本文关键字:文件 文本 开头 删除 情况下 读取 | 更新日期: 2023-09-27 18:16:08
我有一个运行良好的日志应用程序,但是我想应用维护日志文件大小的功能——防止它变得太大。
理想情况下,我想定期检查文件的大小,如果它超过了配置的数量(5MB或其他),从开始删除,直到它达到一定的大小,比如4MB。
从阅读其他问题,我仍然不清楚如果我可以更新/删除一个文件,而不阅读它的整个内容。我的理想情况是:
if(filesize > 5MB)
{
while(filesize > 4MB)
Delete_First_X_Many_Lines(file);
}
提前感谢您的指点和指导。
我会这样做:
- 锁定日志文件(防止写)
- 将要保存的日志文件的末尾复制到新文件中。
- 将新文件复制到旧日志文件上。
- 解锁日志文件