所以我有一个大Text文件,我想读取并取特定的块(大约30行)。此块在我的文本文件中存在很多次,我想使用最后一个。
所以这就是我尝试的:
while (true)
{
Thread.Sleep(30000);
string text = File.ReadAllText(@"c:\file.txt");
string table = string.Join("", text.Substring(text.LastIndexOf("My Statistics:"))
.Split(new[] { '\n' })
.Take(24)
.Select(i => i.ToString())
.ToArray());
File.WriteAllText(@"last.txt", table);
}
该Text文件每20秒更改一次,因此我使用while循环进行此操作,我需要在新Text文件上写入最后一个块。
这里的问题是,在第一次(可以正常工作)之后,我得到了一个错误: OutOfMemoryException
编辑
我尝试另一种方法并逐行读取,但结果是相同的。
慕雪6442864
相关分类