2016-08-17 3 views
-2

以下のコードは、コンソールからの複数行入力を受け入れる方法を示しています。この場合、結果を処理するための入力にはEOFを指定できません。したがって、プログラムはコンパイルされません。問題を解決する方法を提案してください。Javaの複数行入力でファイルの終わりを見つける方法STDIN

package Controller; 

import java.util.*; 
public class Multi_Line_Input 
{ 
    public static void main(String [] args) 
    { 
     Scanner s = new Scanner(System.in); 
     System.out.println("Please enter the inputs"); 
     List<String> l = new ArrayList<String>(); 
     while(s.hasNext()) 
     { 
      String line = s.nextLine(); 
      l.add(line); 
     } 
     Iterator i = l.iterator(); 
     while(i.hasNext()) 
     { 
      System.out.println((String)i.next()); 
     } 
    } 

} 
+0

コンパイルエラーは何ですか? –

+0

コンソールにはEOFはありません。あなたが望むものははっきりしない。私はその理由でdownvotedしています。 –

答えて

1

これはあなたが探しているものですか? と入力すると、プログラムが停止し、入力した行が印刷されます。

import java.util.*; 
public class Multi_Line_Input 
{ 
public static void main(String [] args) 
{ 
    Scanner s = new Scanner(System.in); 
    System.out.println("Please enter the inputs"); 
    List<String> l = new ArrayList<String>(); 
    while(s.hasNext()) 
    { 
     String line = s.nextLine(); 

     if (line.equalsIgnoreCase("exit")) { 
      break; 
     } 

     l.add(line); 
    } 
    Iterator i = l.iterator(); 
    while(i.hasNext()) 
    { 
     System.out.println((String)i.next()); 
    } 
} 

} 
関連する問題