Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.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_Java.util.scanner_File Handling_Nosuchelementexception - Fatal编程技术网

Java 使用扫描器一次读取一个文件夹中的所有文件不会产生任何异常

Java 使用扫描器一次读取一个文件夹中的所有文件不会产生任何异常,java,java.util.scanner,file-handling,nosuchelementexception,Java,Java.util.scanner,File Handling,Nosuchelementexception,以下Java代码: File folder = new File("/home"); File[] listofFiles = folder.listFiles(); for (j = 0; j < listofFiles.length; j++) { File file = listofFiles[j]; if (file.isFile() && file.getName().endsWith(".ucf")) { String content = n

以下Java代码:

File folder = new File("/home");
File[] listofFiles = folder.listFiles();
for (j = 0; j < listofFiles.length; j++) {
  File file = listofFiles[j];
  if (file.isFile() && file.getName().endsWith(".ucf")) {
      String content = new Scanner(new File(file.getName())).useDelimiter("\\Z").next();
      for(i=0;i<content.length-10;i++)
      // do something..
      content = null;
  } // close if..
}

但是,早些时候,当我使用Scanner将特定文件读取为字符串
内容时,
Scanner.next()
中没有此类错误。现在,当我尝试遍历所有文件时,它会出现此异常。

NoSuchElementException
在没有更多令牌可用时发生

当你阅读的时候试试这个

 if(scanner.hasNext())
 scanner.next();

在使用调试器时,您到底从哪里得到异常?在使用
hasNextInt()
方法读取内容之前,您需要检查内容是否存在。@DigvijayYadav正如您所说,一个空文件给出了异常。该死,一个空文件给出了异常,您的答案是正确的。谢谢
 if(scanner.hasNext())
 scanner.next();