java怎么分批读取大文件

53次阅读
没有评论

共计 1011 个字符,预计需要花费 3 分钟才能阅读完成。

在 Java 中,可以使用 BufferedReader 来分批读取大文件。

以下是一个示例代码:

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class ReadLargeFile {public static void main(String[] args) {String filePath = "path_to_large_file.txt";
        int batchSize = 1000; // 设置每次读取的行数
        
        try (BufferedReader reader = new BufferedReader(new FileReader(filePath))) {
            String line;
            int count = 0;
            
            while ((line = reader.readLine()) != null) {// 处理每一行数据
                processLine(line);
                
                count++;
                if (count == batchSize) {// 达到批次大小后进行操作,例如写入数据库等
                    performBatchOperation();
                    
                    count = 0; // 重置计数器
                }
            }
            
            // 处理剩余的数据
            if (count > 0) {performBatchOperation();
            }
        } catch (IOException e) {e.printStackTrace();
        }
    }
    
    private static void processLine(String line) {// 处理每一行数据的逻辑
        System.out.println(line);
    }
    
    private static void performBatchOperation() {// 执行批次操作的逻辑
        System.out.println("Performing batch operation");
    }
}

在上述示例中,将 path_to_large_file.txt 替换为你要读取的大文件的路径。可以通过设置 batchSize 来控制每次读取的行数。在 processLine 方法中,你可以编写自己的逻辑来处理每一行数据。在 performBatchOperation 方法中,你可以编写自己的逻辑来执行批次操作,例如将数据写入数据库等。

注意:在使用 BufferedReader 读取大文件时,建议使用 try-with-resources 语句来确保资源的正确关闭。

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-09发表,共计1011字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)