我想从Java程序运行批处理文件。无法从java程序运行批处理文件
这工作:
runtime.getruntime().exec("cmd /c C:\\test.bat"); //Working
它工作得很好,但如果我给在批处理文件的路径中有空格,它不工作:
runtime.getruntime().exec("cmd /c C:\\Program Files\\test.bat"); //Not Working
任何一个可以帮助我在这。
我想从Java程序运行批处理文件。无法从java程序运行批处理文件
这工作:
runtime.getruntime().exec("cmd /c C:\\test.bat"); //Working
它工作得很好,但如果我给在批处理文件的路径中有空格,它不工作:
runtime.getruntime().exec("cmd /c C:\\Program Files\\test.bat"); //Not Working
任何一个可以帮助我在这。
你需要把周围的文件名引号用空格在命令行:
runtime.getruntime().exec("cmd /c \"C:\\Program Files\\test.bat\"");
ProcessBuilder
对于任何与在1.5+一个Process
。 (如果使用List
based constructor它可能会解决路径问题。)
嗨加贝感谢您的答复。但我也试过这一个,但它不工作 – Vasu
@sivakumar:你使用双反斜杠的目录分隔符? – Gabe
是的,我使用“\\”作为目录修改器 – Vasu