首页 > 解决方案 > 如何使用 Java Scanner 主动读取文件?

问题描述

我正在尝试使用 Java 从文件中流式传输行,为此我需要使用扫描仪,因为它允许我提供自己的分隔符模式。现在,问题是,在读取文件后(在 java 线程中),并且扫描仪仍然打开,我试图读取另一个进程(如连续流)在文件中输入的新行。我可以使用 Buffered Reader 成功完成此操作,但不幸的是,我无法向此 Reader 提供分隔符。所以,我必须使用 Scanner 但它没有读取文件中的这些新行。无论如何我可以让扫描仪读取(或刷新并获取)这些新行吗?我不想从头开始阅读。我在这里显示示例代码以清楚地解释:

    while (loopContinue)   // Always true so this thread will be open for             ever to keep reading this file for new messages
        {
            if(scanner.hasNext())  
            {

            String line=scanner.next();
                System.out.println(line);
            }
            else
            {
                Thread.sleep(10000);

            }
        }
        scanner.close();

感谢您提供的任何帮助。谢谢

标签: java

解决方案


推荐阅读