Runtime.getRuntime().exec(cmd /k start bat文件路径);里面的路径有空格怎么办,加上双引号不可以的,有什么办法??
2 回答
拉风的咖菲猫
TA贡献1995条经验 获得超2个赞
试了一个取巧的方法:
再写一个bat文件,在bat文件里面再写你真正要运行的bat文件的调用。
如我现在想要执行D:\JAVAAPI\test file文件下的一个test.bat文件,但因为test file这个文件夹命名时存在空格,所以执行不成功。
在一个没有空格文件夹目录的地方写一个调用test.bat的文件,如callSomething.bat
echo start
"D:JAVAAPI\test file\test.bat" //此处要用""号,否则还是执行失败,报找不到文件错误
pause
这样在程序中就可以写:
Runtime.getRuntime().exec("cmd /k start D:\JAVAAPI\callSomething.bat");
慕斯王
TA贡献1864条经验 获得超2个赞
特意试了一下,空格应该是没有问题的。
Process exec = Runtime.getRuntime().exec("cmd.exe /k start \"C:\\Program Files\\test.bat\"");
添加回答
举报
0/150
提交
取消