Java调用CMD命令
Java调用CMD命令
制作人:全心全意
示例代码如下:
package com.zq.jpy;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Ret {
public static void main(String[] args) throws IOException, InterruptedException {
String[] arg = new String[] { "python", "E:\\way.py", "111" };
// 执行cmd命令
Process p = Runtime.getRuntime().exec(arg);
// Process p = Runtime.getRuntime().exec("python E:\\way.py 111");
// 获取命令的输出流
// 这里使用了BufferedReader进行输入,因为BufferedReader 有读取一行的方法,处理字符串比较方便
BufferedReader out = new BufferedReader(
new InputStreamReader(p.getInputStream(), "GBK"));
String outline = null;
while ((outline = out.readLine()) != null) {
System.out.println(outline);
}
//// 获取命令的错误输出流
BufferedReader err = new BufferedReader(
new InputStreamReader(p.getErrorStream(), "GBK"));
String errline = null;
while ((errline = err.readLine()) != null) {
System.out.println(errline);
}
// 导致当前线程等待,如有必要,一直要等到由该 Process
// 对象表示的进程已经终止。如果已终止该子进程,此方法立即返回。如果没有终止该子进程,调用的线程将被阻塞,直到退出子进程,根据惯例,0 表示正常终止
p.waitFor();
System.out.println("状态值为:" + p.exitValue()); // 输出命令的返回值(执行状态,0为成功)
}
}

浙公网安备 33010602011771号