我对JAVA NIO API不熟悉。 我需要帮助才能获得常见面试问题的答案。 如果有一个文件包含50 GB的数据,那么最有效的方式就是我们从文件中读取数据并找到最常见的单词。
BufferedReader.readLine()是比Scanner更好的API。 除了使用BufferedReader.readLine()API创建多个线程来批量读取此文件以外,我们还有其他方法吗?
答案 0 :(得分:1)
请参见java.nio.channels.FileChannel javadocs:
文件的区域可以直接映射到内存;对于大文件,这通常比调用通常的读取或写入方法要有效得多。
答案 1 :(得分:0)
也许,使用下面的类,您可能会获得最快的获取/读取输入的方法:
dismiss