// Dir.java
import java.lang.Runtime;
import java.lang.Process;
import java.io.BufferedReader;
import java.io.InputStreamReader;public class Dir
{
public static void main(String[] args)
{
try
{
Runtime r = Runtime.getRuntime();
Process p = r.exec("cmd.exe /c dir");
BufferedReader bf = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line = "";
while ((line = bf.readLine()) != null)
System.out.println(line);
}
catch (Exception exc)
{
exc.printStackTrace();
}
}
}

解决方案 »

  1.   

    liad() ,首先对你表示感谢,其实我要调用的是cls命令,我的程序的功能就是能定期清屏,但是Rantime.getRuntime().exec("cmd.exe /c cls");
    并不管用,我如何才能实现这种效果呢?谢谢老大,一会马上给你分
      

  2.   

    //支持会话的。import java.io.BufferedReader;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.OutputStream;
    public class J_Command {  
    Process process;  Thread in;  
    Thread out;  
    public J_Command(Process process) {    
    this.process = process;    
    final InputStream inputStream = process.getInputStream();    
    //final BufferedReader r=new BufferedReader(new InputStreamReader(inputStream));    
    final byte[] buffer = new byte[1024];    
    out = new Thread() {      
    //String line;      
    int lineNumber=0;      
    public void run() {        
    try {          
    while (true) {            
    int count = inputStream.read(buffer);            
    System.out.println(lineNumber+":"+new String(buffer, 0, count-1));            
    //line=r.readLine();            
    //System.out.println(lineNumber+":"+line);            
    lineNumber++;          
    }        
    }catch (Exception e) {        
    }      
    }    
    };    
    final BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));    
    final OutputStream outputStream = process.getOutputStream();    
    in = new Thread() {      
    String line;      
    public void run() {       
     try {          
      while (true) {            
      outputStream.write( (reader.readLine()+"\n").getBytes());            
      outputStream.flush();          
      }        
      }        
      catch (Exception e) {        
      }      
      }    
    };  
    }  

    public void startIn() {    
    in.start();  
    }  
    public void startOut() {    
    out.start();  
    }  

    public void interruptIn() {    
    in.interrupt();  
    }  

    public void interruptOut() {    
    out.interrupt();  
    }  

    public static void main(String[] args) {    
    try {      
    J_Command command = new J_Command(Runtime.getRuntime().exec("cmd"));      
    command.startIn();      
    command.startOut();    
    } catch (Exception e) {      
    e.printStackTrace();    
    }  
    }
    }
      

  3.   

    清屏,估计不能通过调用dos命令cls实现
    你到google上打
    "clear screen" console java
    就可以找到不少东西
      

  4.   

    谢谢,但是还是不能实现定时清屏的功能呀,也就是说成功调用了cls命令,但是并不能实现清屏C