如果你想在 JAVA 中执行其他操作系统的程序,例如:运行 DOS 命令、shell 脚本、exe 文件,只需了解 java.lang.Process 类的用法,上述问题皆可实现。
1.输入
以 Windows 平台为例,来看一个简单的例子:
ProcessBuilder 可用于构建 Process ,其构造方法接收 String 类型的可变参数,如果命令带有多个参数,需分割成多个 String 字符串 ;
getInputStream() 获取进程标准的输出流,再使用 InputStreamReader 读取其中的字符,如果包含中文字符,需要指定编码格式;
BufferedReader 开启缓冲输入,增加读取速度;
public class ProcessDemo {
public static void command(String command) throws IOException {
Process process = new ProcessBuilder(command.split(" ")).start();
//指定编码格式,解决中文乱码问题
BufferedReader results = new BufferedReader(new InputStreamReader(process.getInputStream(), "GBK"));
String s;
while ((s = results.readLine()<