下面只截取关键代码:
1# //cmd.exe指出程序调用cmd.exe
//YourCommand代表你想要执行的命令
//这里的exec方法内的字符串参数可以换成任何可执行程序的名称
Process process = Runtime.getRuntime().exec(“cmd.exe /c YourCommand”);
//YourCommand代表你想要执行的命令
//这里的exec方法内的字符串参数可以换成任何可执行程序的名称
Process process = Runtime.getRuntime().exec(“cmd.exe /c YourCommand”);
2# //读取缓冲区内容,用BufferedReader过滤器封装后读出到标准输出
String ls;
BufferedReader bufferedReader = new BufferedReader(new inputStreamReader(process.getinputStream()));
while ((ls=bufferedReader.readLine()) != null)
System.out.println(ls);
3# //可有可无
process.waitFor();
说明:如果不写第二段读取缓冲区的代码,那么第三段代码就必须写上。因为Runtime.getRuntime().exec()返回的是一个进程对象, 该进程会进入OS调用队列,这段代码以下的代码会不等该进程执行完就会立即执行,所以process.waitFor()是必须要写的,即在该进程执行完 毕后再执行以下代码。
http://hi.baidu.com/reason_shanshi/blog/item/ef522f24222e6c2ed40742e4.html
赞赏
微信赞赏
支付宝赞赏
「赏不在多,觉得文章有用,就赞赏下吧!」