10GB (21 个回答) 关闭 1 年前。 需要一段代码来读取日志文件的最后“-6ren">
gpt4 book ai didi

c# - 如何读取日志文件的最后 "n"行

转载 作者:可可西里 更新时间:2023-11-01 03:08:58 26 4
gpt4 key购买 nike

<分区>

需要一段代码来读取日志文件的最后“n 行”。我从网上想出了以下代码。我对 C sharp 有点陌生。由于日志文件可能是相当大,我想避免读取整个文件的开销。有人可以建议任何性能增强。我真的不想阅读每个字符并改变位置。

   var reader = new StreamReader(filePath, Encoding.ASCII);
reader.BaseStream.Seek(0, SeekOrigin.End);
var count = 0;
while (count <= tailCount)
{
if (reader.BaseStream.Position <= 0) break;
reader.BaseStream.Position--;
int c = reader.Read();
if (reader.BaseStream.Position <= 0) break;
reader.BaseStream.Position--;
if (c == '\n')
{
++count;
}
}

var str = reader.ReadToEnd();

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com