我已经阅读了很多关于这个问题的内容,但我发现的答案并没有完全奏效.
我尝试运行此代码:
String[] args = {"cmd","/c","start","C:\\Program Files\\XML Marker\\xmlmarker.exe"};
Runtime rt = Runtime.getRuntime();
ProcessBuilder pb = new ProcessBuilder(args);
Process pr = pb.start();
//Process pr = rt.exec(args);
Run Code Online (Sandbox Code Playgroud)
因为我的路径中有空格,所以我使用String数组将参数传递给Process但是......它打开了一个DOS命令窗口但是没有启动我的程序,好像参数被忽略了
我尝试使用rt.exec(args)和pb.start()...相同的结果
有人可以给我一些建议吗?谢谢.
尝试通过在字符串中插入转义引号来在路径周围添加引号,如下所示:
String[] args = {"cmd","/c","start","\"C:\\Program Files\\XML Marker\\xmlmarker.exe\""};
Run Code Online (Sandbox Code Playgroud)
注意\"路径字符串的开头和结尾.