注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

一线天色 天宇星辰

天下武功,唯快不破

 
 
 

日志

 
 

java调用外部程序  

2011-12-01 20:55:09|  分类: 软件开发 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

Process p= Runtime.getRuntime().exec(commond);
   p.waitFor();

比如在windows调用cmd命令

在Linux下调用shell命令

如调用rar程序建立一个密码为abc#123的aatxt的aa.rar的文件,命令如下

Process p= Runtime.getRuntime().exec("rar a -ep -df -hp abc#123 /home/aa.rar /home/aa.txt");
int result = p.waitFor();

public abstract int waitFor() throws InterruptedException
导致当前线程等待,如有必要,一直要等到由该 Process 对象表示的进程已经终止。如果已终止该子进程,此方法立即返回。如果没有终止该子进程,调用的线程将被阻塞,直到退出子进程。

返回:
进程的出口值。根据惯例,0 表示正常终止。
抛出:
InterruptedException - 如果当前线程在等待时被另一线程中断,则停止等待,抛出 InterruptedException

方法摘要

abstract void

destroy()
杀掉子进程。

abstract int

exitValue()
返回子进程的出口值。

abstract InputStream

getErrorStream()
获取子进程的错误流。

abstract InputStream

getInputStream()
获取子进程的输入流。

abstract OutputStream

getOutputStream()
获取子进程的输出流。

abstract int

waitFor()
导致当前线程等待,如有必要,一直要等到由该
Process
对象表示的进程已经终止。

构造方法详细信息

Process

public Process()

方法详细信息

getOutputStream

public abstract OutputStream getOutputStream()
获取子进程的输出流。输出流被传送给由该 Process 对象表示的进程的标准输入流。

实现注意事项:对输出流进行缓冲是一个好主意。

返回:
连接到子进程正常输入的输出流。

getInputStream

public abstract InputStream getInputStream()
获取子进程的输入流。输入流获得由该 Process 对象表示的进程的标准输出流。

实现注意事项:对输入流进行缓冲是一个好主意。

返回:
连接到子进程正常输出的输入流。
另请参见:
ProcessBuilder.redirectErrorStream()

getErrorStream

public abstract InputStream getErrorStream()
获取子进程的错误流。错误流获得由该 Process 对象表示的进程的错误输出流传送的数据。

实现注意事项:对输入流进行缓冲是一个好主意。

返回:
连接到子进程错误流的输入流。
另请参见:
ProcessBuilder.redirectErrorStream()

waitFor

public abstract int waitFor()                       throws InterruptedException
导致当前线程等待,如有必要,一直要等到由该 Process 对象表示的进程已经终止。如果已终止该子进程,此方法立即返回。如果没有终止该子进程,调用的线程将被阻塞,直到退出子进程。

返回:
进程的出口值。根据惯例,0 表示正常终止。
抛出:
InterruptedException - 如果当前线程在等待时被另一线程中断,则停止等待,抛出 InterruptedException

exitValue

public abstract int exitValue()
返回子进程的出口值。

返回:
Process 对象表示的子进程的出口值。根据惯例,值 0 表示正常终止。
抛出:
IllegalThreadStateException - 如果此 Process 对象表示的子进程尚未终止。

destroy

public abstract void destroy()
杀掉子进程。强制终止此 Process 对象表示的子进程。

 你觉得本文怎么样?  

票数:2 投票时间:2011-12-01 20:55:10 到 2014-12-31 23:00:00

  •     2(100%)
  •     0(0%)
  •     0(0%)
查看参与情况
编辑投票|删除投票

最新投票|博友投票

      评论这张
     
    阅读(1531)| 评论(0)
    推荐 转载

    历史上的今天

    评论

    <#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
     
     
     
     
     
     
     
     
     
     
     
     
     
     

    页脚

    网易公司版权所有 ©1997-2018