2012-07-02 51 views
0
package src; 

import java.io.BufferedReader; 
import java.io.IOException; 
import java.io.InputStreamReader; 

public class Command 
{ 
    public static void main(String args[]) 
    { 
     try 
     { 
      Process p=Runtime.getRuntime().exec("cmd /c dir"); 
      p.waitFor(); 
      BufferedReader reader=new BufferedReader(new InputStreamReader(p.getInputStream())); 
      String line=reader.readLine(); 
      while(line!=null) 
      { 
       System.out.println(line); 
       line=reader.readLine(); 
      } 

     } 
     catch(IOException e1) {} 
     catch(InterruptedException e2) {} 

     System.out.println("Done"); 
    } 
} 

我试图运行这段代码,但它无法执行任何操作。是否有一些类路径或其他设置我需要做到这一点?来自java程序的命令

+2

你是什么意思'不能执行'?当你运行这个控制台时,输出是什么?它也可能正在运行,但引发异常。你没有做任何异常事情。在异常块中添加'e1.printStrackTrace();'以查看错误信息 – Joost

+1

编译它'> javac Command.java -d .'并从命令行运行'> java src.Command' – adatapost

+0

意味着它什么也不做!它只是陷入无限循环而没有给出任何输出。 – agarwav

回答

2

备注行:

p.waitFor(); 

,然后重新运行。

你也可能想要读this

+0

thanx:D现在工作。 – agarwav

+0

ok和alfasin如果我想运行一个java程序,我会写些什么假设a.java?我必须改变什么? – agarwav

+0

'javac a.java'然后'java a'(来自提示符) – alfasin