作者:陈刚,桂林人,97年毕业于广西师范大学数学系,暂于IBM中国研究中心兼职从事软件开发(2004.2-?),专注基于java平台的软件开发。
email: glchengang@hotmail.com
blog: glchengang.yeah.net
最近开发报表模块,生成报表文件后(一个Excel文件)要将此文件打。很简单,使用Java调用外部程序的方法即可。代码如下:
String path = "C:/报表_20040504.xls";
try {
//相当于window的"开始"->"运行"的效果
Runtime.getRuntime().exec("cmd /c start " + path);
} catch (IOException e) {
e.printStackTrace();
}
但如果文件的路径中包含有空格上面的方法就会出错。到google狂搜一气,没有,看cmd /?帮助也没有,试了好多次,发现解决办法其实很简单,真是愚昧。代码如下,无须多言。
String path = "C:/Documents and Settings/Giles/桌面/报表_20040504.xls";
try {
Runtime.getRuntime().exec("cmd /c start excel \"" + path + "\"");
} catch (IOException e) {
e.printStackTrace();
}