Java 为什么这个简单的代码会抛出“NoTouchElementException”?

Java 为什么这个简单的代码会抛出“NoTouchElementException”?,java,io,Java,Io,somefile.txt有如下输入,newfile.txt为空 China 1330044605 India 1147995898 United States 303824646 这两个文件都在我的桌面上 public class NextMethod { public static void main(String[] args) throws FileNotFoundException { File inputFile = new File("/home/cyn

somefile.txt有如下输入,newfile.txt为空

China
1330044605
India
1147995898
United States
303824646
这两个文件都在我的桌面上

public class NextMethod {

    public static void main(String[] args) throws FileNotFoundException {

        File inputFile = new File("/home/cyn/Desktop/somefile.txt");
        Scanner in = new Scanner(inputFile);
        PrintWriter writer = new PrintWriter("/home/cyn/Desktop/newfile.txt");


        while (in.hasNextLine()) {

            String coName = in.nextLine();
            int peopCo = in.nextInt();
            in.nextLine();
            writer.println(coName);
            writer.println(peopCo);

        }

        in.close();
        writer.close();

    }

}

我可以通过在someFile.txt的末尾添加一个空行来复制您的问题

这与中记录的行为一致

抛出:NoTouchElementException-如果未找到行


检查以确保输入文档中没有任何意外的空白

我尽可能地修正了你的问题的措辞和格式。这里缺少的另一个主要内容是完整的异常,包括堆栈跟踪以及它发生在哪一行。