在 Java 中启动进程
类似于 .Net 框架,其中使用 System.Diagnostics.Process.Start("processname" 启动进程),Java提供了一种便捷的方式来执行外部程序。
Java Process接口
在Java中,Runtime类提供了exec()方法来启动进程。语法为:
Process p = Runtime.getRuntime().exec("processname");
其中“processname”代表要启动的可执行文件或命令。
跨平台兼容性
实现跨平台兼容性,您可以使用 System 类来确定当前操作系统并相应地调整进程启动。例如,在 Windows 系统上,您可以在可执行文件名称之前使用“%windir%system32”路径。
进程输入和输出
Process 类提供输入和输出流与正在运行的进程进行通信。您可以使用 getInputStream() 和 getOutputStream() 方法来访问这些流。
示例演练
提供的 Java 代码演示了如何启动命令 tree.com Windows 系统上的 /A:
import java.io.BufferedReader; import java.io.InputStreamReader; import java.nio.file.Paths; public class CmdExec { public static void main(String[] args) { try { Process p = Runtime.getRuntime().exec( Paths.get(System.getenv("windir"), "system32", "tree.com /A").toString() ); try (BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()))) { String line; while ((line = input.readLine()) != null) { System.out.println(line); } } } catch (Exception err) { err.printStackTrace(); } } }
此代码使用 /A 选项启动树命令,该命令显示目录以树形格式列出。然后读取命令的输出并将其打印到控制台。
以上是如何在 Java 中执行外部程序:进程接口指南?的详细内容。更多信息请关注PHP中文网其他相关文章!