| Java调用可执行文件和批处理命令 |
|
xyz20003 原创 更新:2006-04-13 10:09:57 版本: 1.0
|
|
在java调用exe,com可执行文件和bat,cmd批处理文件 一。运行exe文件
1. Java JDK里已经提供了调用的方法,不在累赘,代码如下。
try { String command = "notepad"; Process child = Runtime.getRuntime().exec(command); } catch (IOException e) { }
二。运行bat(批处理)文件
1.
import java.io.*;
public class Test { public static void main(String[] args) { System.out.println("args : " + java.util.Arrays.asList(args));
try { String command = args.length == 0 ? "notepad" : args[0]; Process child = Runtime.getRuntime().exec(command);
String line = null; BufferedReader reader = new BufferedReader(new InputStreamReader(child.getInputStream())); while((line = reader.readLine()) != null) { System.out.println(line); } } catch (Exception ex) { ex.printStackTrace(); } }
}
2. 虽然网上有人说找不到直接执行bat文件的方法,但我使用这种方法似乎也可以达到执行bat文件的效果,原本的希望是看看能从Process中读到什么信息,结果直接把bat文件中的内容按行打印并执行了。 3. 但因为InputStream一直没有关闭,这个循环变成了一个死循环,不知道如何判断批处理文件何时执行完毕。
|
|
|
评论人:ninjar
|
发表时间: Mon May 08 18:46:30 CST 2006
|
支持一下下!! 正是我要的
|
|
|
评论人:yemeiqiang
|
发表时间: Wed May 10 08:02:44 CST 2006
|
好
|
|
|
评论人:nancyxiaojing
|
发表时间: Mon Jun 19 16:32:05 CST 2006
|
不懂,批处理文件是在记事本中输入的的吗?我在eclipse里试了一下,除了弹出记事本外没什么反映阿,请不吝赐教!
|
|
|
评论人:xyz20003
|
发表时间: Fri Dec 08 12:37:01 CST 2006
|
bat是windows平台下的脚本程序,你用记事本写个 echo It is Showtime! pause 把文件扩展名改成.bat,运行一下看看就知道了。
|
|
|