我需要执行一个带有 2 个参数的命令行程序。但是,它必须在工作目录中执行。即“命令 arg1 arg2”,而不是“c:\folder\subfolder\command arg1 arg2”
从这里的其他问题来看,我已经开始使用 Runtime.exec(cmdArray, null, workingDirectory); 但我不断收到“CreateProcess error=2,系统找不到指定的文件”。我查了一下,路径和文件都存在,所以我不知道出了什么问题。这是我正在使用的代码。
String [] fileName = {"mp3wrap.exe", "Clear_10", "*.mp3"};
String dirName = "E:\\Music\\New Folder\\zz Concatinate\\Clear_10";
try {
Runtime rt = Runtime.getRuntime();
Process pr = rt.exec(fileName, null, new File(dirName));
BufferedReader input = new BufferedReader(new InputStreamReader
(pr.getInputStream()));
String line = null;
while ((line = input.readLine()) != null) {
System.out.println(line);
}//end while
int exitVal = pr.waitFor();
System.out.println("Exited with error code " + exitVal);
}//end try
catch (Exception e) {
System.out.println(e.toString());
e.printStackTrace();
}//end catch`
我收到此错误:
java.io.IOException: Cannot run program "mp3wrap.exe" (in directory "E:\Music\New Folder\zz Concatinate\Clear_10"): CreateProcess error=2, 系统找不到指定的文件