java - 读取大文件的最有效方法

标签 java nio

我对 JAVA NIO API 不熟悉。 我需要帮助来获得常见面试问题的答案。 如果有一个包含 50 GB 数据的文件,我们从文件中读取数据并找到最频繁出现的单词的最有效方法是什么。

BufferedReader.readLine() 是比 Scanner 更好的 API。 除了创建多个线程使用 BufferedReader.readLine() API 批量读取该文件之外,我们还有其他方法吗?

最佳答案

请参阅 java.nio.channels.FileChannel javadocs:

文件的某个区域可以直接映射到内存中;对于大文件,这通常比调用通常的读取或写入方法更有效。

关于java - 读取大文件的最有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52964733/

相关文章:

java - 构造具有未知子类型的 Java 泛型

java - 迭代 2 个文件以删除任何公共(public)字符串行并分离出唯一字符串

java - 使用 Java NIO 监视服务监视 http 资源

java - 基于 Netty 的非阻塞 REST 框架

java - 在 Java 7 中删除二进制文件的一部分的最佳方法是什么

java - 读入字符串,检查字符串,并输出数字

java - 如何将 Tomcat 重写阀添加到 Spring Boot 2.0 应用程序

Java ByteBuffer 性能问题

java - java中的线程和public void run()方法

java - 蔚来挂机问题?