2016-09-18 10 views
-3

somefile.txtは以下のような入力があり、newfile.txtは空です。なぜこの単純なコードは "NoSuchElementException"をスローしますか?

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(); 

    } 

} 
+0

あなたの質問の言い回しと書式設定をできるだけ早く修正しました。ここで欠けている主なものは、スタックトレースとそれが発生する行を含む完全な例外です。 – smarx

答えて

0

someFile.txtの末尾に空白行を追加して問題を再現できました。

これはjavadocに記載されているものと一貫した動作です。

例外:はNoSuchElementExceptionを - 何行があなたの入力文書の意図しない空白を持っていないことを確認する

チェックが見つからなかった場合。

関連する問題