1

テキストファイルから読み取るプログラムを作成しようとしています。を使用cmdして入力しjavac fileName.java、コンパイルしjava -cp . fileNameてから実行します。と書いてプログラムを動かしたいjava fileName textInput.txt。私はすでにプログラムを作成しました。しかし、コードでテキスト ファイルの名前を指定する必要があります。

args[0]テキストファイルの名前にするべきだと言われましたが、これを実装する方法がわかりません。

コードを投稿していませんが、必要な場合は教えてください。

4

4 に答える 4

5

以下のようなクラスがある場合

public class YourClass {
    public static void main(String[] args) {
        String fileName = args[0]; // would contain "textInput.txt"
        // work with fileName
    }
}

としてプログラムを実行しますjava YourClass textInput.txt

String 配列argsには、コマンドの実行時に渡すすべての引数が含まれますjava。ファイル名に限らず、何でもかまいません。Bailey S が言うように、これらの引数はシェルのトークン化に基づいてトークン化されます。インデックスは 0 から始まります。

       java YourClass arg1 arg2 arg3
                       ^    ^    ^
index:                 0    1    2
于 2013-03-08T21:04:12.363 に答える
3
String filePath = args[0];
// Do whatever with the file path
于 2013-03-08T21:03:37.123 に答える
3
class fileName {

   public static void main(String[] args) {

       String filePath = args[0];
       //but check if args[0] exist.

    }
}
于 2013-03-08T21:04:28.290 に答える
3

StringJava プログラムのメイン メソッドは、コマンド ライン経由で渡される引数である値の配列を受け取ります。

java javaClass.class arg0 arg1 arg2

そして、コードからキャッチする方法は次のとおりです。

public static void main(String[] args)
{
    System.out.println(args[0]); // prints arg0
    System.out.println(args[1]); // prints arg1
    System.out.println(args[2]); // prints arg2
}

引数を使用する前に、渡された引数の数を確認することをお勧めします。

if(args.length < 0) System.out.println("No arguments are passed!");
于 2013-03-08T21:05:38.963 に答える