Java逐行打印大文件行

时间:2014-12-23 20:23:37

标签: java string out

每次我做

之类的事情
BufferedReader br = new BufferedReader(new FileReader(f));
        String line;
        while ((line = br.readLine()) != null) {
            System.out.println(line);
        }
        br.close();

它不会逐行打印。相反,它将滞后2-3秒然后立即显示它。我已经尝试过安装睡眠方法等。我怎样才能让它花费时间并经过每一个而不仅仅是滞后并一次吐出来?

3 个答案:

答案 0 :(得分:4)

尝试刷新输出。

System.out.flush();

在每个System.out.println之后

答案 1 :(得分:2)

这可能是因为您的文件在每行末尾没有回车符。因此,它将整个文件视为一行。

答案 2 :(得分:0)

尝试将行发送到数组列表。查看arraylist是否包含每一行。然后尝试通过chunk将数组列表迭代到网站块。

BufferedReader br = new BufferedReader(new FileReader(f));
ArrayList<String> list = new ArrayList<String>();

        String line;
        while ((line = br.readLine()) != null) {
            list.add(line); 
        }
        br.close();

       for(String one_line: list){
        //send lines to website: 
        //sendLine(one_line);
        }