2017-04-06 21 views
1

ファイルの入力を促すメッセージは表示されませんか?あなたが使用する必要がスキャナ用のスキャナを使用してコマンドラインからファイルを読み取る方法

Console console = System.console(); 
if(console != null) { String userInput = console.readLine(); 
+0

実際にargs []が混乱しています。 'string args []'は、mainメソッドに与えることができるプログラム引数を参照します。 – Ishnark

答えて

1

助けてください。

Scanner console = new Scanner(System.in); 
+0

私はBufferedReaderを使うことができますが、クラスのためにはできません。どうもありがとうございます:) –

+0

スキャナスキャナ=新しいスキャナ(System.in);その後、ユーザーから必要とする値のタイプに応じて、さまざまなscanner.getXXX()メソッドのいずれかを使用してget値を呼び出すことができます。 –

+0

私はwhileループの内側と外側を試しましたが、依然として入力を要求しませんでしたか? –

1

BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); String userInput = reader.readLine(); 

新しい方法を:古いやり方に私

public static void main (String args []){ 
if (0 < args.length) { 
    File inFile = new File(args[0]); // Make sure the file exists, can read, etc... 
    while (!inFile.exists()) { 
     Scanner console = new Scanner (inFile); 
     System.out.println ("Input file:"); //prompt user to input file 
     String inFileName = console.nextLine(); 
     System.out.println ("Input file:"); //prompt user to input file 
     inFileName =inFileName.trim(); //get rid of whitespace 
      System.out.println(inFileName); 
     inFile = new File (inFileName); 
     } 
0

期待した作業をわずかなコードで行うことができます。

public static void main(String[] args) { 
     Scanner userInput = new Scanner(System.in); 
     System.out.println("Input file : "); 
     String inFile = userInput.next(); 
     System.out.println("Input file is " + inFile); 
    } 
関連する問題