Heim >Java >javaLernprogramm >Wie führe ich Systembefehle aus und interagiere mit anderen Anwendungen in Java?

Wie führe ich Systembefehle aus und interagiere mit anderen Anwendungen in Java?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-19 04:51:02921Durchsuche

How to Execute System Commands and Interact with Other Applications in Java?

Prozesse in Java ausführen

In Java ist die Fähigkeit, Prozesse zu starten, eine entscheidende Funktion für die Ausführung von Systembefehlen und die Interaktion mit anderen Anwendungen. Um einen Prozess zu initiieren, stellt Java ein Äquivalent zur .Net System.Diagnostics.Process.Start-Methode bereit.

Lösung:

Für die Ausführung ist es entscheidend, einen lokalen Pfad zu erhalten Prozesse in Java. Glücklicherweise bieten die Systemeigenschaften von Java Möglichkeiten, diesen Pfad zu bestimmen. Der folgende Codeausschnitt zeigt, wie ein Prozess in Java gestartet wird:

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.nio.file.Paths;

public class CmdExec {

  public static void main(String args[]) {
    try {
      // Enter code here
      Process p = Runtime.getRuntime().exec(
          Paths.get(System.getenv("windir"), "system32", "tree.com /A").toString()
      );

      // Enter code here
      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();
    }
  }
}

Verwendung:

  1. Paths.get() erstellt einen lokalen Pfad zum angegebenen Befehl mithilfe von Systemeigenschaften (in diesem Fall „tree.com“).
  2. Runtime.getRuntime().exec() initiiert den Prozess mit dem angegebenen Pfad.

Mit diesem Ansatz können Sie Befehle auf jedem Betriebssystem ausführen, solange Sie über den richtigen lokalen Pfad für die ausführbare Datei verfügen.

Das obige ist der detaillierte Inhalt vonWie führe ich Systembefehle aus und interagiere mit anderen Anwendungen in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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