我对处理大文件和内存约束的经验非常少。 请注意,我使用Java作为编程语言。写入文件时哪一个更快?
我必须找到文件大小为15GB的记录,然后将结果写入另一个文件。基本上它是一个搜索范围功能的实现。我的目标是将我范围内的记录写入以换行符分隔的结果文件。那就是每个记录应该分开来。这些查询的数量大约是400-1000。所以每个查询都会导致写入许多记录在其范围内。
那么以下哪种方法更快?
1-只要我开始获取查询范围记录,我就开始将它们写入文件串行?
2-我在一些字符串中存储我的记录,并在每个找到的记录的字符串中追加,然后最后写入它?
3-使用字符串生成器来连接每个查询的结果,然后在最后写入文件?但字符串生成器不支持新行。
4-建立我自己的数据结构?
5-制作记录数组列表,然后在最后遍历它以写入文件?
请让我知道哪种方法在IO和MM方面都是最快的。
嗯,我们不能使用数据库,因为它是一个项目来构建数据库,所以我们不能使用任何提供索引或数据库相关功能的库。对不起,你没有标记回答的问题是什么意思?你在谈论关于堆栈溢出问题以外的其他问题吗?谢谢 ! – Basmah
不是说StringBuilder是最好的解决方案,但我几乎积极支持换行 –