猿问

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

Runtime.getRuntime().exec(cmd /k start bat文件路径);
里面的路径有空格怎么办,加上双引号不可以的,有什么办法??

慕桂英4014372
浏览 2047回答 2
2回答

拉风的咖菲猫

试了一个取巧的方法:再写一个bat文件,在bat文件里面再写你真正要运行的bat文件的调用。如我现在想要执行D:\JAVAAPI\test file文件下的一个test.bat文件,但因为test file这个文件夹命名时存在空格,所以执行不成功。在一个没有空格文件夹目录的地方写一个调用test.bat的文件,如callSomething.batecho start"D:JAVAAPI\test file\test.bat" //此处要用""号,否则还是执行失败,报找不到文件错误pause这样在程序中就可以写:Runtime.getRuntime().exec("cmd /k start D:\JAVAAPI\callSomething.bat");

慕斯王

特意试了一下,空格应该是没有问题的。Process exec = Runtime.getRuntime().exec("cmd.exe /k start \"C:\\Program Files\\test.bat\"");
随时随地看视频慕课网APP

相关分类

Java
我要回答