甲、在dos窗口中,打开文件(路径中含有空格,及路径中不含空格的,方法如下:(例中打开d:\aa a\bb b.xlsx文件,文件夹aa a和文件bb b.xlsx中都含有空格)
方法一:打开含路径中含有空格的,命令:C:\Users\Administrator> start " " "d:\aa a\bb b.xlsx" (命令行是:start 加上 两个双引号,再加上使用双引号括起来路径文件名,重点是:start后一定要跟上一对双引号,路径文件名一定要加上双引号,缺一不可,而且文件路径前的双引号一定不能和start后的第二个引号挨在一起,至少一个空格隔开,此种方法不仅可打开路径、文件名中含有空格的,而且可打开不含空格的,可取代方法二)
方法二:打开路径文件名中不含空格的,命令:C:\Users\Administrator> start d:\aaa\bbb.xlsx (命令行是:start加上路径文件名,重点是:此种写法只能打开路径、文件名中都不含空格的文件)
乙、在java中的实现如下:
//含空格的文件路径及文件名
String path = "d:\\aa a\\bb b.xlsx";
//在dos执行的命令行,以“cmd /c"开头
//注意:第二个\"和第三个\"之间一定要有空格,否则运行失败
String command = "cmd /c start " + "\"\" \"" +path+"\"";
//使用process调用dos命令打开文件
Process proc = Runtime.getRuntime().exec(command);