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
相关文档:
Java第三方library ecosystem是一个很广阔的范畴。不久前有人撰文:每个项目中,你必须知道的11个Java第三方类库。
单元测试
1.DBUnit
DBunit是一个基于junit扩展的数据库测试框架。它提供了大量的类对与数据库相关的操作进行了抽象和封装。
2.MOckito
Mockito是一个针对Java的mocking框架。你可以使用简洁的API编写出 ......
Package 的命名
Package 的名字应该都是由一个小写单词组成。
Class 的命名
Class 的名字必须由大写字母开头而其他字母都小写的单词组成
Class 变量的命名
变量的名字必须用一个小写字母开头。后面的单词用大写字母开头。
Static Final&nbs ......
(1) 用extends关键字创建自己的违例类MyException。为这个类写一个构建器,令其采用String参数,并随同String句柄把它保存到对象内。再写一个main()方法,其中令其在try块内掷出MyException类的一个对象。在catch从句内捕获违例,并打印出字串参数。添加一个finally从句,并打印一条消息,证明自己真正到达那里。
&n ......
为了把学到知识总结起来,特开此文。主要是把每天学到的东西加以记录,不至于变成大狗熊。
20100310
今天在论坛看人发了两道java题,不错,把问题和答案都加进来,以便以后参考。
问题:
要求实现方法里面的代码:
1. function1()
返回相同闊度數字型字串. 例:
function1(“000000 ......
重新来认识一下内部类的区别
1
Static member class(静态成员类)
类声明中包含“static”关键字的内部类。如以下示例代码,
Inner1/Inner2/Inner3/Inner4就是Outer的四个静态成员类。静态成员类的使用方式与一般顶层类的使用方式基本相同。
publi ......