Java如何调用外部外部命令?
Java如何调用外部外部命令?
我自己的体会是用Runtime.getRuntime.exec(cmd);
譬如下面这个代码:
String[] cmd = new String[3];
if( osName.equals( "Windows NT" )||osName.equals( "Windows 2000" ))
{
cmd[0] = "cmd.exe" ;
cmd[1] = "/C" ;
}
else if(osName.equals("Linux"))
{
cmd[0]="sh"
cmd[1]=linux下的某个目录
}
else if( osName.equals( "Windows 98" ) )
{
cmd[0] = "command.com" ;
cmd[1] = "/C" ;
}
cmd[2] = "mysqldump --opt -u root yh_tpl > "+backup_path+filename+".sql";
Process ps = Runtime.getRuntime().exec(cmd);
今天看到了别人回复这类问题,有这样一点以前不知道:
java中调用exec完全脱离了java的jvm,因此以后的运行环境需要自己维护。
======================================================================================================
Java调用外部程序的方法
作者:陈刚,桂林人,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
相关文档:
这是我第一次写技术博文,喜欢大家提出宝贵意见。这篇文章主要想讲三个问题。
第一:Hibernate和JDBC的区别。
作为java程序员,我觉得弄清楚Hibernate与JDBC的区别,不仅对打好扎实的基本功比较重要,就是以后的学习,开发也具有相当的借鉴意义。可惜的是现在有好些程序员不屑于学 ......
一、IO流的三种分类方式
1.按流的方向分为:输入流和输出流
2.按流的数据单位不同分为:字节流和字符流
&n ......
反射机制:所谓的反射机制就是java
语言在运行时拥
有一项自观的能力。通过这种能力可以彻底的了解自身的情况为下一步的动作做准备。下面具体介绍一下java
的反射机制。这里你将颠覆原来对java的理解。
Java的反射机制的实现要借助于4个类:class,Constructor,Field,Method;其中class代表的时类对
象,Constructo ......
一, package,import引入原因:
package:
我们都熟悉超市,超市虽然庞大,东西繁多,却管理的井井有条,很容易找到某样东东;,之所以能如此,一个重要的原因就是采用了分类放置,既方便了管理,又方便了寻找
Package也是一个分类放置东东的区域,不过它放的不是商品而是java中的类。Java中有各种各样的类,
内容丰 ......
重新来认识一下内部类的区别
1
Static member class(静态成员类)
类声明中包含“static”关键字的内部类。如以下示例代码,
Inner1/Inner2/Inner3/Inner4就是Outer的四个静态成员类。静态成员类的使用方式与一般顶层类的使用方式基本相同。
publi ......