我正在处理一个非常大的文本文件(755Mb)。 我需要对这些行进行排序(大约 1890000 行),然后将它们写回另一个文件。
我已经注意到了一个与我的起始文件非常相似的讨论: 按单词作为关键字排序行
问题在于,我无法将这些行存储在内存中的集合中,因为我会收到 Java 堆空间异常(即使我已经将其扩展到最大值)。已经尝试过!
我也不能使用 excel 打开它并使用排序功能,因为该文件太大,无法完全加载。
我考虑使用数据库,但我认为先写入所有行,然后使用 SELECT 查询太耗时。我错了吗?
任何提示都将不胜感激 提前致谢
-XX:+UseCompressedStrings
。 - Peter Lawrey