比如在程序中调用cmd命令打开一个文件,而文件路径带有空格,如果直接把路径传给cmd,那么cmd就会把路径空格前面的部分当做是一个参数,空格后当做另一个参数,导致程序出错,解决方法是把传入的参数前后添加双引号。以java为例:
例如 Runtime.getRuntime().exec("cmd /c start "+filepath) ,
假设String filePath = "D:\\document setting\\a.txt";
解决方法:
filepath = "\"" + filepath + "\""; //先给filepath 两端加上引号
Runtime.getRuntime().exec("cmd /c start "+"\""+"\" "+ filepath); //再给start后面加一对引号
总共要多加2对引号
注意:Runtime.getRuntime().exec()中,在第二个\后的第一个"与最后一个"之间要有空格,表示cmd窗口标题为空。
本文介绍了在Java中使用Runtime.getRuntime().exec()方法执行CMD命令时,遇到文件路径包含空格导致命令解析错误的问题,并提供了解决方案。通过在文件路径前后添加双引号,确保CMD正确解析文件路径。
992

被折叠的 条评论
为什么被折叠?



