new+java.lang.ProcessBuilder
时间: 2023-10-25 17:08:00 浏览: 204
`java.lang.ProcessBuilder` 是 Java 中用于创建和管理外进程的类。它提供了一种简单的方式来启动外部命令,并与其进行交互。
要创建一个新的 `ProcessBuilder` 对象,你可以使用以下代码:
```java
ProcessBuilder processBuilder = new ProcessBuilder(command);
```
其中,`command` 是一个字符串列表,表示要执行的命令及其参数。例如,如果要执行 `ls -l` 命令,可以这样写:
```java
ProcessBuilder processBuilder = new ProcessBuilder("ls", "-l");
```
一旦创建了 `ProcessBuilder` 对象,你可以使用其提供的方法来设置执行环境、工作目录、重定向输入输出流等。最后,调用 `start()` 方法启动外部进程并返回一个 `Process` 对象。
以下是一个简单的示例代码,演示了如何使用 `ProcessBuilder` 执行外部命令并获取其输出:
```java
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public class ProcessBuilderExample {
public static void main(String[] args) {
try {
ProcessBuilder processBuilder = new ProcessBuilder("ls", "-l");
Process process = processBuilder.start();
// 获取命令输出
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("Command exited with code: " + exitCode);
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
```
希望这能帮助到你!如果你有任何其他问题,请随时问我。
阅读全文