Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java中的扫描器是否阻止文件输入?_Java_Text_Io - Fatal编程技术网

Java中的扫描器是否阻止文件输入?

Java中的扫描器是否阻止文件输入?,java,text,io,Java,Text,Io,我目前正在编写一个日志读取器,它应该扫描当前正在写入的日志文件,然后将数据上传到服务器。文件每小时更改一次。我想知道scanner中的next()方法是否像用于标准输入一样用于文件结尾。我无法在谷歌搜索中在线找到这些信息 谢谢。这似乎不太可能,因为一旦到达文件末尾,它就假定已经完成,因为它无法知道文件可能会更改 我还建议您查看扫描仪的源代码,以便进行仔细检查。技术上正确的答案:是的,扫描仪使用标准IO调用,这可能会阻止输入。当数据不可用但尚未到达文件末尾时,它将执行此操作。如果是从套接字读取,则

我目前正在编写一个日志读取器,它应该扫描当前正在写入的日志文件,然后将数据上传到服务器。文件每小时更改一次。我想知道scanner中的next()方法是否像用于标准输入一样用于文件结尾。我无法在谷歌搜索中在线找到这些信息


谢谢。

这似乎不太可能,因为一旦到达文件末尾,它就假定已经完成,因为它无法知道文件可能会更改


我还建议您查看扫描仪的源代码,以便进行仔细检查。

技术上正确的答案:是的,扫描仪使用标准IO调用,这可能会阻止输入。当数据不可用但尚未到达文件末尾时,它将执行此操作。如果是从套接字读取,则会出现这种情况


您正在寻找的答案:在您描述的情况下,扫描仪不会阻塞,因为它已到达文件末尾。即使将来可能会写入文件,当您尝试读取文件结尾时也会生成EOF。

您可以在大约5分钟内轻松尝试此操作,无需重新发明轮子:感谢您的帮助,Duncan。感谢您的准确和成功响应。