您的位置:首页 > 编程语言 > Java开发

实现 java 执行 cmd 命令,打印输出,等待cmd 完全执行完成后才执行下面代码

2012-10-12 16:40 766 查看
//执行windows 下 ejtag命令

final Process p = Runtime.getRuntime().exec("D:\\loongson\\OtherTools\\ejtag-debug-cygwin\\ejtag_debug_usb.exe -e 'source D:/ejtag-debug-cygwin/configs/config.ls1dspiUpload'");

//获取进程的标准输入流

final InputStream is1 = p.getInputStream();

//获取进城的错误流

final InputStream is2 = p.getErrorStream();

//启动两个线程,一个线程负责读标准输出流,另一个负责读标准错误流

new Thread() {

public void run() {

BufferedReader br1 = new BufferedReader(new InputStreamReader(is1));

try {

String line1 = null;

while ((line1 = br1.readLine()) != null) {

if (line1 != null){

System.out.println("=AA==========line1======"+line1);

}

}

} catch (IOException e) {

e.printStackTrace();

}

finally{

try {

is1.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

}.start();

new Thread() {

public void run() {

BufferedReader br2 = new BufferedReader(new InputStreamReader(is2));

try {

String line2 = null ;

while ((line2 = br2.readLine()) != null ) {

if (line2 != null){

System.out.println("=AA==========line2======"+line2);

}

}

} catch (IOException e) {

e.printStackTrace();

}

finally{

try {

is2.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

}.start();

p.waitFor();

p.destroy();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: