首頁 >Java >java教程 >如何在 Java 中執行外部程式:進程介面指南?

如何在 Java 中執行外部程式:進程介面指南?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-20 03:16:02387瀏覽

How to Execute External Programs in Java: A Guide to the Process Interface?

在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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn