如何使用flatpack解析大文件

时间:2015-03-30 03:14:44

标签: java flatpack

我需要解析可能非常大的文件,可能是100兆字节和数百万行。我一直试图使用FlatPack来做到这一点。我认为这样做的方法是使用缓冲的解析器和新的流方法。但是,尽管dataset.next()对于正确的记录数返回true,但dataset.getRecord()返回的Optional永远不会包含值。

我看过这个example/test,但它只计算记录的数量,实际上并没有对内容做任何事情。 例如,/测试

2 个答案:

答案 0 :(得分:0)

您可以使用BuffReaderParseFactory类而不是DefaultParserFactory。

只有当您拨打" next()"

时,它才会从输入文件中读取一条记录。

答案 1 :(得分:0)

DefaultParserFactory和BuffReaderParseFactory的解释并不完全有用。两个库都说返回PZParser(来自newDelimitedParser),但只有一个返回记录中的实际值。基于我见过的例子,我认为BuffReaderParseFactory仅用于检查性能(因此应该更快),而另一方面DefaultParserFactory包含所有记录。