Java调用系统命令学习(三)
学习了两篇的Runtime类,现在对它有了更深一层的了解,那么我们来看看下面的代码:
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader ;
import java.io.BufferedReader;
public class Exec_Output{
public static void main(String []args)throws IOException,InterruptedException{
Runtime rt = Runtime.getRuntime();
Process p = rt.exec("dir");
//int exitValue = p.exitValue();
//int exitValue = p.waitFor();
InputStream is = p.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String line = null;
System.out.println("<OUTPUT>");
while((line = br.readLine())!=null){
System.out.println(line);
System.out.println("</OUTPUT>");
int exitValue = p.waitFor();
System.out.println("Process exitValue="+exitValue);
}
}
}
//执行结果(在Ubuntu9.10下执行)
<OUTPUT>
class CUtil.java Exec.java Exec_Javac.java Exec_Output.java Str.java
</OUTPUT>
因为以上代码,我使用了Ubuntu9.10下执行,是一点问题都没有,但当我在windows xp下执行,意外却发生了。
E:classescomjavaworldjpitfallsarticle2>java BadExecWinDir
java.io.IOException: CreateProcess: dir error=2
at java.lang.Win32Process.create(Native Method)
at java.lang.Win32Process.<init>(Unknown Source)
at java.lang.Runtime.execInternal(Native Method)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at BadExecWinDir.main(BadExecWinDir.java:12)
也许大家觉得奇怪,其实我也很奇怪,为什么呢。好好在Linux下,咋到XP就有问题了呢。
以下引用了别人的话:
说实
相关文档:
经过上一篇的学习,应该对Java中的Runtime类的exec方法了大致的了解,也知道应该如何去使用了吧。
首先学习下:Process类。
简单地测试一下:
调用Javac命令,并查看执行命令的返回值,并输出到控制台上去。
import java.io.IOException;
class Exec_Javac{
public static void main(String []args)throws IO ......
老
师让下载安装jdk1.4、jdk1.5和jdk1.6三个版本的Java开发包,并且熟练切换各个环境,其实就是配置不同的环境变量。以前只是在环境变
量中设置了用户变量,Java运行也很正常。一旦需要在几个版本中切换,用户变量就失效了。经过尝试才知道必须设置系统变量,为了方便可以设置
JAVA_HOME变量为jdk的安装路径,再把 %JA ......
Java
中的transient,volatile和strictfp关键字
如果用transient声明一个实例变量,当对象存储时,它的值不需要维持。例如:
Java
代码
class
T {
transient
int
a;
//不需要维持
int ......
ed2k://|file|[ReadFree]_C#.开发人员指南——ASP_NET、XML、web服务与.ADO_NET_11030729.rar|6563070|B1CBF4D0032C8D78FB10F5F2AE6C3882|/
ed2k://|file|[ReadFree]_C#网络应用编程_11041620.rar|8063056|7044A65903D86BF88BE8AF26D8E02B61|/
ed2k://|file|[ReadFree]_Java.P2P程序设计_11052086.rar|8742852| ......