Heim > Java > javaLernprogramm > So führen Sie externe Programme in Java aus: Eine Anleitung zur Prozessschnittstelle?

So führen Sie externe Programme in Java aus: Eine Anleitung zur Prozessschnittstelle?

Mary-Kate Olsen
Freigeben: 2024-11-20 03:16:02
Original
342 Leute haben es durchsucht

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

Prozesse in Java starten

Ähnlich dem .Net-Framework, bei dem Prozesse mit System.Diagnostics.Process.Start("processname" gestartet werden ) bietet Java eine bequeme Möglichkeit, externe Programme auszuführen.

Java-Prozess Schnittstelle

In Java bietet die Runtime-Klasse die Methode exec() zum Starten eines Prozesses. Die Syntax lautet:

Process p = Runtime.getRuntime().exec("processname");
Nach dem Login kopieren

wobei „Prozessname“ die ausführbare Datei oder den zu startenden Befehl darstellt.

Plattformübergreifende Kompatibilität

Zu erreichen Aufgrund der plattformübergreifenden Kompatibilität können Sie mithilfe der Systemklasse das aktuelle Betriebssystem ermitteln und den Prozessstart entsprechend anpassen. Auf Windows-Systemen können Sie beispielsweise den Pfad „%windir%system32“ vor dem Namen der ausführbaren Datei verwenden.

Eingabe und Ausgabe verarbeiten

Die Process-Klasse stellt Eingaben bereit und Ausgabeströme zur Kommunikation mit dem laufenden Prozess. Sie können die Methoden getInputStream() und getOutputStream() verwenden, um auf diese Streams zuzugreifen.

Beispiel-Anleitung

Der bereitgestellte Java-Code zeigt, wie der Befehl „tree.com“ gestartet wird /A auf einem Windows-System:

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();
    }
  }
}
Nach dem Login kopieren

Dieser Code startet den Baumbefehl mit der Option /A, die eine Verzeichnisliste im Baum anzeigt formatieren. Die Ausgabe des Befehls wird dann gelesen und auf der Konsole ausgegeben.

Das obige ist der detaillierte Inhalt vonSo führen Sie externe Programme in Java aus: Eine Anleitung zur Prozessschnittstelle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage