package test;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
public class Test1 {
public static void main(String[] args) {
try {
Process process = Runtime.getRuntime().exec("cmd"); //cmd /c start 可以打开另一个窗口
PrintWriter writer = new PrintWriter(process.getOutputStream());
new CommandThread(writer).start();
BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream()));
String s = null;
while ((s = br.readLine()) != null) {
System.out.println(s);
}
Thread.currentThread().interrupt();
} catch (Exception e) {
e.printStackTrace();
}
}
static class CommandThread extends Thread{
PrintWriter writer;
BufferedReader br = null;
CommandThread(PrintWriter writer){
this.writer = writer;
br = new BufferedReader(new InputStreamReader(System.in));
this.setDaemon(true);
}
@Override
public void run() {
try {
String cmd = null;
while((cmd = br.readLine()) != null){
writer.println(cmd);
writer.flush();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
java与cmd命令窗口交互
最新推荐文章于 2023-06-29 22:27:52 发布