4

「1.exe」、「2.exe」、「3.exe」、...、「100.exe」という名前のファイルが 100 個あります。ユーザーからの入力を 1、2、3、... または100 を開き、対応する exe ファイルを実行します。たとえば、ユーザーが 45 と入力した場合、ファイル "45.exe" を実行します。ifs やスイッチは使用したくありません。誰でも私を助けてください。

4

5 に答える 5

13

入力が常にexeのファイル名と等しい場合は、次の方法で実行できます。

if( isInputNumberBetween1And100() )
    Runtime.getRuntime().exec( input + ".exe" );
于 2012-08-29T07:46:23.383 に答える
2
Runtime.getRuntime().exec( input + ".exe" ).waitFor();

あなたがそれを待ちたいならうまくいきます。

于 2012-08-31T12:11:36.463 に答える
2

それらが同じフォルダーにある場合は、 java.nio.file.Paths を使用してそれらを解決することもできます。

Runtime.getRuntime().exec(Paths.get(getNumberInput() + ".exe").toString());
于 2012-08-29T07:59:59.713 に答える
1

私のJavaは少し錆びていますが、許してください。

次のようにして文字列を形成します。

String number = "45"; // or whatever user inputs
String suffix = ".exe";
String file = number + suffix;

次に、文字列を取得したら、それを使用してプロセスを実行します。

Runtime rt = Runtime.getRuntime();
Process p = rt.exec(file);

プロセスが完了したら、破棄します。

p.destroy();
于 2012-08-29T07:47:56.987 に答える
1
// getInputFromUser() is your function with validation 
String processName = getInputFromUser()+".exe";  
Runtime.getRuntime().exec( processName );
于 2012-08-29T07:55:15.910 に答える