VB.NET处理纯文本文件

时间:2012-04-12 20:02:59

标签: .net vb.net visual-studio

我正在尝试使用VB.NET来处理非常大的纯文本文件(2 GB)。它是一个数据库,字段分隔符为SOH,记录分隔符为STX

我想分开文件的字段和记录。

我通常会读取文本文件的每一行,然后使用split函数来分隔字段。我不能使用这种方法,因为每一行都不总是有分隔符。

在找到STX之前有没有办法读取文件(而不是一次只读一行)?

2 个答案:

答案 0 :(得分:1)

在.NET中没有“直到字符串'foo'”,你需要打开一个FileStream并用FileStream.Read读取块到一个临时缓冲区中并扫描该缓冲区以获取你的令牌。 / p>

答案 1 :(得分:0)

我会查看TextFieldParser类,看看它是否适合任务:

http://msdn.microsoft.com/en-us/library/microsoft.visualbasic.fileio.textfieldparser.aspx

如果不是,我会尝试免费的FileHelpers库:

http://www.filehelpers.com/

如果这些人都不能胜任这项工作,那么就像阿尔宾所提到的那样,你可以使用缓冲区进行良好的文件流读取。