Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.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 带分隔符的扫描仪\\Z";在第一次调用时没有下一个元素_Java_Input_Delimiter - Fatal编程技术网

Java 带分隔符的扫描仪\\Z";在第一次调用时没有下一个元素

Java 带分隔符的扫描仪\\Z";在第一次调用时没有下一个元素,java,input,delimiter,Java,Input,Delimiter,你好!我使用这部分代码 File file = new File(someFilePath); Scanner sc; try { sc = new Scanner(file); } catch (FileNotFoundException e) { return ""; } sc.useDelimiter("\\Z"); System.out.println("file : " + file.getName() +

你好!我使用这部分代码

File file = new File(someFilePath);
    Scanner sc;
    try {
        sc = new Scanner(file);
    } catch (FileNotFoundException e) {
        return "";
    }
    sc.useDelimiter("\\Z");
    System.out.println("file : " + file.getName() + " " + sc.hasNext() + " " + sc.delimiter());
    String fileString = sc.next();
在这段代码的最后一行,我在线程“main”java.util.NoTouchElementException中得到了错误
异常。
输出是
文件:758279215_profile.txt false\Z
,因此分隔符是正确的,文件存在(并且它不是空的,我已经检查过了),但是由于某种原因它没有下一个元素(我认为下一个元素应该是,并且应该是文件中的整个文本)。出了什么问题以及如何解决?谢谢大家!

增加:

BufferedReader br = new BufferedReader(new FileReader(file));
    String line = "";
    while (line != null) {
        try {
            line = br.readLine();
        } catch (IOException e) {
            e.printStackTrace();
        }
        System.out.println(line);
    }
返回文件内容(内容编辑为JSON文本的文本文件)和null(循环的最后一次写入)

可能是区域设置问题。
尝试导出LC\u ALL=en\u US.utf-8

是否可以在不设置分隔符的情况下尝试相同的代码?@dasblinkenlight-yep,输出为
文件:758279215\u profile.txt false\p{javaWhitespace}+
,错误是sameIt看起来系统在不同的位置查找文件,而您正在检查该文件以确认它是否为非空。文件在那里,但它是空的。尝试
System.out.println(file.length())
查看它是否为零。@dasblinkenlight
file.length()
返回1331字节什么?。。这毫无意义!您是否可以尝试在不使用
扫描仪的情况下阅读该文件?您是否可以详细说明您的答案,并添加有关您提供的解决方案的更多描述?我遇到了相同的问题,我尝试用另一种方法重写此部分。编译已通过,但由于编码问题,单元测试失败。然后我尝试更改我的
LC\u ALL
设置。神奇的是,现在一切都好了(有了这两个代码)。您可以检查文档中的区域设置描述。