为了账号安全,请及时绑定邮箱和手机立即绑定

java用命令调用bat批处理的问题

java用命令调用bat批处理的问题

慕桂英4014372 2019-03-20 18:19:16
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");


查看完整回答
反对 回复 2019-04-30
?
慕斯王

TA贡献1864条经验 获得超2个赞

特意试了一下,空格应该是没有问题的。

Process exec = Runtime.getRuntime().exec("cmd.exe /k start \"C:\\Program Files\\test.bat\"");


查看完整回答
反对 回复 2019-04-30
  • 2 回答
  • 0 关注
  • 2046 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信