【发布时间】:2010-09-20 21:46:07
【问题描述】:
我有一个文本文件,其中包含多个“记录”。每条记录都包含一个名称和一组数字作为数据。
我正在尝试构建一个类来读取文件,只显示所有记录的名称,然后允许用户选择他/她想要的记录数据。
第一次浏览文件时,我只读取标题名称,但我可以跟踪文件中标题所在的“位置”。在用户请求后,我需要随机访问文本文件以查找每条记录的开头。
我必须这样做,因为文件太大而无法在内存 (1GB+) 中完全读入应用程序的其他内存需求。
我尝试使用 .NET StreamReader 类来完成此操作(它提供了非常易于使用的“ReadLine”功能,但无法捕获文件的真实位置(BaseStream 属性中的位置是倾斜的)由于类使用的缓冲区)。
在 .NET 中有没有简单的方法可以做到这一点?
【问题讨论】:
标签: c# text streamreader random-access