⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 如何正确地应用runtime类调用程序.htm

📁 java的Java书籍JAVA多线程!请大家看看!!有学习的价值!!!xieixe
💻 HTM
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0050)http://www.cn-java.com/target/book.php?news_id=508 -->
<HTML><HEAD><TITLE>如何正确地应用Runtime类调用程序</TITLE>
<SCRIPT language=JavaScript src="如何正确地应用Runtime类调用程序.files/windows.js"></SCRIPT>

<SCRIPT language=javascript> 
function js_callpage(htmlurl) {
  var newwin=window.open(htmlurl,"newwin","toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=550,height=450");
}
</SCRIPT>

<META http-equiv=Content-Type content="text/html; charset=gb2312">
<STYLE type=text/css>BODY {
	OVERFLOW-X: hidden; OVERFLOW: scroll
}
.DEK {
	Z-INDEX: 200; VISIBILITY: hidden; POSITION: absolute
}
</STYLE>
<LINK href="如何正确地应用Runtime类调用程序.files/style.css" type=text/css rel=STYLESHEET>
<META content="MSHTML 6.00.2800.1106" name=GENERATOR></HEAD>
<BODY oncontextmenu="return true" link=#00000 leftMargin=0 topMargin=0>
<SCRIPT language=JavaScript> 
function MM_o(selObj){ 
window.open(selObj.options[selObj.selectedIndex].value);} 

function MM_jumpMenu(targ,selObj,restore){ //v3.0 

if(selObj.options[selObj.selectedIndex].value!=''){

	eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'"); 

	if (restore) selObj.selectedIndex=0; 

}

} 
</SCRIPT>

<TABLE height=84 cellSpacing=0 cellPadding=0 width=760 align=center 
bgColor=#ffffff border=0>
  <TBODY>
  <TR>
    <TD bgColor=#000000 rowSpan=2><IMG height=65 
      src="如何正确地应用Runtime类调用程序.files/heard1.jpg" width=110></TD>
    <TD bgColor=#000000 rowSpan=2><IMG height=65 
      src="如何正确地应用Runtime类调用程序.files/heard2.jpg" width=142></TD>
    <TD borderColor=#0 width=615 bgColor=#000000><!-- <a href='http://www.cn-java.com/community/' target='_blank'><IMG SRC='http://www.cn-java.com/images/bar.gif' BORDER='0'></a> -->
      <DIV align=center>
      <OBJECT 
      codeBase=http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0 
      height=60 width=460 classid=clsid:D27CDB6E-AE6D-11cf-96B8-444553540000><PARAM NAME="movie" VALUE="../images/aws-banner-04.swf"><PARAM NAME="quality" VALUE="high">
                                    <embed src="../images/aws-banner-04.swf" 
      quality=high 
      pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" 
      type="application/x-shockwave-flash" width="460" height="60">          
      </embed>         </OBJECT></DIV></TD></TD></TR>
  <TR>
    <TD vAlign=center width=615 bgColor=#000000 height=17><A 
      href="http://www.cn-java.com:7001/roller" target=_self><FONT 
      face="Arial, Helvetica, sans-serif" color=red 
      size=3><B>BLOG</B></FONT></A><FONT face="Arial, Helvetica, sans-serif" 
      color=#cc9900 size=3>|</FONT> <FONT face="Arial, Helvetica, sans-serif"><A 
      href="http://www.cn-java.com/tologin.php" target=_self><FONT color=#ffffff 
      size=2>登录</FONT></A> <FONT color=#cc9900 size=3>|</FONT><A 
      href="http://www.cn-java.com/user_step1.php" target=_self><FONT 
      color=#ffffff size=2>免费注册</FONT></A><FONT color=#cc9900 
      size=3>|</FONT><FONT face="Arial, Helvetica, sans-serif"><A 
      href="http://www.actionsoft.com.cn/" target=_self><FONT color=#ffffff 
      size=2><B><FONT color=#ffcc00>炎黄盈动</FONT></B></FONT></A></FONT><FONT 
      color=#cc9900 size=3><FONT color=#cc9900 size=3>|</FONT></FONT><A 
      href="http://www.cn-java.com/community" target=_self><FONT color=#ffffff 
      size=2>Java社区</FONT></A><FONT color=#cc9900 size=3>|</FONT><FONT 
      face="Arial, Helvetica, sans-serif"><A 
      href="http://www.cn-java.com/javaforum" target=_self><B><FONT 
      color=#ffcc00 size=2>新版论坛</FONT></B></A><FONT color=#cc9900 
      size=3>|</FONT><FONT face="Arial, Helvetica, sans-serif"><A 
      href="http://www.cn-java.com/opensource" target=_self><FONT color=#ffffff 
      size=2>开源项目</FONT></A><FONT color=#cc9900 size=3>|</FONT> <FONT 
      face="Arial, Helvetica, sans-serif"><A 
      href="http://www.cn-java.com/index.php" target=_self><FONT color=#ffffff 
      size=2>主页</FONT></A> </FONT>&nbsp;</FONT>&nbsp;&nbsp;&nbsp; <SELECT 
      class=homepage onchange="MM_jumpMenu('parent',this,1)" name=select> 
        <OPTION selected>站点导航</OPTION> <OPTION 
        value=http://www.cn-java.com>+-首页</OPTION> <OPTION 
        value=http://www.cn-java.com/community/>+Java社区</OPTION> <OPTION 
        value=http://www.cn-java.com/opensource/>+开源项目</OPTION> <OPTION 
        value=http://www.cn-java.com/eshop/>+JAVA图书</OPTION> 
        <OPTION>+-新手入门</OPTION> <OPTION 
        value=http://www.cn-java.com/index_focus.php?kind=31&amp;title=配置java环境>|-配置JAVA环境</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_news_kind.php?title=新手入门/JAVA语言基础&amp;kind=32&amp;group=>|-JAVA语言基础</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_download_kind.php?title=开发工具与教程&amp;kind=&amp;group=01>|-开发工具与教程下载</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_download_kind.php?title=程序代码&amp;kind=&amp;group=02>|-程序代码下载</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_news_kind.php?title=新手入门/实用技巧&amp;kind=34>|-实用技巧</OPTION> 
        <OPTION value=http://www.cn-java.com/index_faq_center.php>|-FAQ 
        abc</OPTION> <OPTION 
        value=http://www.cn-java.com/index_resource_kind.php>|-学习资源</OPTION> 
        <OPTION>+专题技术</OPTION> <OPTION 
        value=http://www.cn-java.com/index_focus.php?kind=12&amp;title=Java线程>|-JAVA线程</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_focus.php?kind=20&amp;title=Socket编程>|-Socket编程</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_focus.php?kind=37&amp;title=应用服务器>|-应用服务器</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_focus.php?kind=38&amp;title=WebService>|-Web 
        Service</OPTION> <OPTION 
        value=http://www.cn-java.com/index_focus.php?kind=21&amp;title=J2EE>|-J2EE</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_focus.php?kind=17&amp;title=EJB专题>|-EJB专题</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_focus.php?kind=14&amp;title=JAVA与XML>|-JAVA与XML</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_focus.php?kind=16&amp;title=Servlet与JSP>|-Servlet与JSP</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_focus.php?kind=15&amp;title=Applet与Swing>|-Applet与Swing</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_focus.php?kind=13&amp;title=数据库专题>|-数据库专题</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_focus.php?kind=22&amp;title=JavaMail>|-JavaMail</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_focus.php?kind=18&amp;title=Java智能卡>|-Java智能卡</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_focus.php?kind=35&amp;title=J2ME>|-J2ME</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_focus.php?kind=19&amp;title=WAP应用技术>|-WAP应用技术</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_focus.php?kind=04&amp;title=Java认证考试>|-Java认证考试</OPTION> 
        <OPTION 
        value=http://www.cn-java.com/index_focus.php?kind=36&amp;title=设计模式>|-设计模式</OPTION> 
        <OPTION value=http://www.cn-java.com/qikan/list.php>+电子期刊</OPTION> 
        <OPTION>+会员管理</OPTION> <OPTION 
        value=http://www.cn-java.com/index_user_center.php>|-会员管理中心</OPTION> 
        <OPTION value=http://www.cn-java.com/postMain.php>|-我的文章中心</OPTION> 
        <OPTION value=http://www.cn-java.com/webteam/>|-JWT成员</OPTION></SELECT> 
      </FONT></FONT></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width="100%" align=center border=0>
  <TBODY>
  <TR bgColor=#000099>
    <TD align=middle width=769 colSpan=2>
      <P align=left><FONT color=#ffffff>当前位置:CN-JAVA/参考书籍</FONT> 
  </P></TD></TR></TBODY></TABLE>
<DIV class=dek id=dek></DIV>
<SCRIPT type=text/javascript>
<!--


Xoffset=-20;    // 可调整
Yoffset= 20;    // 可调整

var nav,old,iex=(document.all),yyy=-1000;
if(navigator.appName=="Netscape"){(document.layers)?nav=true:old=true;}

if(!old){
var skn=(nav)?document.dek:dek.style;
if(nav)document.captureEvents(Event.MOUSEMOVE);
document.onmousemove=get_mouse;
}

function popup(msg,bak){
var content="<TABLE  WIDTH=300 BORDER=1 BORDERCOLOR=black CELLPADDING=2 CELLSPACING=0 "+
"BGCOLOR="+bak+"><TD ALIGN=left><FONT COLOR=black SIZE=2>"+msg+"</FONT></TD></TABLE>";
if(old){alert(msg);return;} 
else{yyy=Yoffset;
 if(nav){skn.document.write(content);skn.document.close();skn.visibility="visible"}
 if(iex){document.all("dek").innerHTML=content;skn.visibility="visible"}
 }
}

function get_mouse(e){
var x=(nav)?e.pageX:event.x+document.body.scrollLeft;skn.left=x+Xoffset;
var y=(nav)?e.pageY:event.y+document.body.scrollTop;skn.top=y+yyy;
}

function kill(){
if(!old){yyy=-1000;skn.visibility="hidden";}
}

//-->
</SCRIPT>

<TABLE cellSpacing=0 cellPadding=0 width="97%" align=center bgColor=#ffffff 
border=0>
  <TBODY>
  <TR>
    <TD vAlign=top colSpan=3 height=69>
      <P>&nbsp;</P>
      <UL><FONT face="Arial, Helvetica, sans-serif" color=#336699 
        size=3><B><FONT color=#000000>如何正确地应用Runtime类调用程序 
        </FONT></B></FONT><FONT color=gray size=1>访问量1456次</FONT> <FONT 
        face="Arial, Helvetica, sans-serif" color=#336699 size=3>
        <HR align=left width="100%" noShade>
        </FONT></UL></TD>
  <TR>
    <TD vAlign=top width="4%"><FONT face="Arial, Helvetica, sans-serif" 
      color=#336699 size=3><BR><FONT color=#000000 size=2></FONT></FONT></TD>
    <TD vAlign=top width="79%">
      <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
        <TBODY>
        <TR vAlign=top>
          <TD>
            <P><FONT face="Arial, Helvetica, sans-serif" color=#336699 
            size=3><FONT face="Arial, Helvetica, sans-serif" color=#336699 
            size=3>
            <P><IMG height=162 src="" width=120></P></FONT><FONT color=#000000 
            size=2><BR></FONT><FONT face="Arial, Helvetica, sans-serif" 
            color=#336699 size=3><FONT color=#000000 
            size=2>用Java编写应用时,有时需要在程序中调用另一个现成的可执行程序或系统命令,这时可以通过组合使用Java提供的Runtime类和Process类的方法实现。下面是一种比较典型的程序模式: 
            <BR>... <BR>Process process = Runtime.getRuntime().exec(".\\p.exe"); 
            <BR>process.waitfor( ); <BR>... 
            <BR>在上面的程序中,第一行的“.\\p.exe”是要执行的程序名,Runtime.getRuntime()返回当前应用程序的Runtime对象,该对象的exec()方法指示Java虚拟机创建一个子进程执行指定的可执行程序,并返回与该子进程对应的Process对象实例。通过Process可以控制该子进程的执行或获取该子进程的信息。第二条语句的目的等待子进程完成再往下执行。 
            <BR>但在windows平台上,如果处理不当,有时并不能得到预期的结果。下面是笔者在实际编程中总结的几种需要注意的情况: 
            <BR>1、执行DOS的内部命令 
            <BR>如果要执行一条DOS内部命令,有两种方法。一种方法是把命令解释器包含在exec()的参数中。例如,执行dir命令,在NT上, 
            可写成exec("cmd.exe /c dir"),在windows 95/98下,可写成“command.exe /c 
            dir”,其中参数“/c”表示命令执行后关闭Dos立即关闭窗口。另一种方法是,把内部命令放在一个批命令my_dir.bat文件中,在Java程序中写成exec("my_dir.bat")。如果仅仅写成exec("dir"),Java虚拟机则会报运行时错误。前一种方法要保证程序的可移植性,需要在程序中读取运行的操作系统平台,以调用不同的命令解释器。后一种方法则不需要做更多的处理。 
            <BR>2、打开一个不可执行的文件 <BR>打开一个不可执行的文件,但该文件存在关联的应用程序,则可以有两种方式。 
            以打开一个word文档a.doc文件为例,Java中可以有以下两种写法: <BR>exec("start .\\a.doc"); 
            <BR>exec(" c:\\Program Files\\Microsoft Office\\office\\winword.exe 
            .\\a.doc"); <BR>显然,前一种方法更为简捷方便。 <BR>3、执行一个有标准输出的DOS可执行程序 
            <BR>在windows平台上,运行被调用程序的DOS窗口在程序执行完毕后往往并不会自动关闭,从而导致Java应用程序阻塞在waitfor( 
            )。导致该现象的一个可能的原因是,该可执行程序的标准输出比较多,而运行窗口的标准输出缓冲区不够大。解决的办法是,利用Java提供的Process类提供的方法让Java虚拟机截获被调用程序的DOS运行窗口的标准输出,在waitfor()命令之前读出窗口的标准输出缓冲区中的内容。一段典型的程序如下: 
            <BR>... <BR>String ls_1; <BR>Process process = 
            Runtime.getRuntime().exec("cmd /c dir \\windows"); 
            <BR>BufferedReader bufferedReader = new BufferedReader( \ <BR>new 
            InputStreamReader(process.getInputStream()); <BR>while ( 
            (ls_1=bufferedReader.readLine()) != null) 
            <BR>System.out.println(ls_1); <BR>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -