获取输入并匹配相应的文件

时间:2012-08-29 07:42:35

标签: java file input

我有100个名为“1.exe”,“2.exe”,“3.exe”,...,“100.exe”的文件 我想从用户输入1,2,3,...或100并运行相应的exe文件。 例如,如果用户输入45,我将运行文件“45.exe” 我不想使用ifs或开关。 任何人都可以帮助我。

5 个答案:

答案 0 :(得分:13)

如果输入始终等于你的exes的文件名,你可以用:

if( isInputNumberBetween1And100() )
    Runtime.getRuntime().exec( input + ".exe" );

答案 1 :(得分:2)

如果它们位于同一个文件夹中,您也可以使用java.nio.file.Paths来解决它们:

Runtime.getRuntime().exec(Paths.get(getNumberInput() + ".exe").toString());

答案 2 :(得分:2)

Runtime.getRuntime().exec( input + ".exe" ).waitFor();
如果你想等待,

会有效。

答案 3 :(得分: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();

答案 4 :(得分:1)

// getInputFromUser() is your function with validation 
String processName = getInputFromUser()+".exe";  
Runtime.getRuntime().exec( processName );