2017-10-01 7 views
0

コマンドライン引数を使用してプログラムを実行するように求められました。コマンドライン引数は、ファイルまたは標準入力のいずれかです。 例:intellij/eclipseからarg []を使用してコマンドライン引数を取得する方法

プログラムは、2つのソースからの入力を受け入れる必要があります。ファイル名は コマンドライン引数とSTDINに渡されます。例えば、 './program input.txt'や './program < input.txt'はうまくいくはずです。

私は率直に言って、私はファイルの場所を渡すか、STDINを使用してプログラムに入力するかどうかはわかりません。私は、今のところ、ファイルの場所を入力するよう求めていると仮定しています。 arg [0]を使ってどうすればいいですか? System.inを使用することはできますか?それは私から求められている要件に違反しますか?

答えて

0

私は、ファイルの場所を渡すか、またはSTDIN

両方を使用してプログラムへの入力を供給するために求められていますかどうかを確認していません。 "あなたのプログラムは2つのソースからの入力を受け入れる必要があります"と述べました。したがって、あなたのプログラムは、ファイル引数を取るか、または標準から読み込むかのどちらかをサポートしなければなりません。

最初の変形例では、ファイル引数はファイル名arg[0]になります。

arg-arrayに少なくとも1つのエントリが含まれている場合は、file引数を使用します。 ファイル引数がない場合(arg.length == 0)、STDINから読み取ります。

はコードでは、それは少し、このようになります。

public static void main(String[] arg) { 
    if (arg.length == 0) { 
    // work with System.in 
    } else { 
    File file = new File(arg[0]); 
    // work with file 
    } 
} 
+0

それを説明していただきありがとうございます。 – LifeStartsAtHelloWorld

1

アプリケーションを直接実行する代わりに、実行コンフィギュレーションから引数を渡すことができます。

  1. プロジェクトを右クリック> [新しいウィンドウで実行した構成
  2. >として実行:あなたは見つけることができますjavaアプリケーション>「あなたのアプリ」
  3. 例えば、日食中に次の操作を行うことができますタブ "引数"

ここでは、 "プログラム引数"でアプリケーションの引数を設定できます。

+0

おかげで、私は試してみることになります。 – LifeStartsAtHelloWorld

関連する問題