Java process类
时间: 2023-10-23 20:10:52 浏览: 41
Java中的Process类用于控制操作系统中的进程。它允许Java程序执行外部命令并与其进行交互。
使用Process类,您可以启动新的进程,并通过输入流和输出流与其进行通信。下面是一个简单的例子,展示了如何使用Process类来执行外部命令并获取其输出:
```java
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public class ProcessExample {
public static void main(String[] args) {
try {
// 执行命令
Process process = Runtime.getRuntime().exec("ls -l");
// 获取命令输出的输入流
InputStream inputStream = process.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
// 读取输出
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
// 等待命令执行完成
int exitCode = process.waitFor();
System.out.println("命令执行完成,退出码:" + exitCode);
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
```
在上面的例子中,我们使用`Runtime.getRuntime().exec()`方法执行了一个`ls -l`命令,并通过输入流读取了命令的输出。然后,我们使用`process.waitFor()`方法等待命令执行完成,并获取其退出码。
通过使用Process类,您可以执行各种操作系统的命令并与其进行交互。您还可以使用ProcessBuilder类来更灵活地控制进程的启动和管理。