-1

对于某些测试数据场景,我需要读取包含 100000 行行的文件并使用某些条件处理每一行,然后根据条件需要以文本格式输出数据

为此,我计划将所有数据行存储在一些 pojo 中,然后将 pojo 存储到 List 我担心的是内存中有 100000 行的 pojo。这只是为了测试用例。

4

2 回答 2

1

我认为使用 InputSteam 读取文件会更好,因为您仍然会一一获取行。您可以每次读取一行,然后处理您的配置然后输出。

在列表中存储太多对象可能会遇到内存不足错误。

于 2013-09-30T09:21:14.827 回答
0

无论如何,将所有 100000 行作为 POJO 存储在内存中是一个糟糕的设计。一些可能的解决方案是:

  1. 一次读取一行并处理它。
  2. 与其一次从文件中读取一条记录并使用 java 处理它,不如使用一些脚本语言来填充数据库表,然后从您的 java 代码中处理表中的记录。
于 2013-09-30T09:25:20.207 回答