Heim >Java >javaLernprogramm >Wie kann ich externe Programme effektiv ausführen und deren Ausgabe in Java abrufen?

Wie kann ich externe Programme effektiv ausführen und deren Ausgabe in Java abrufen?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-31 04:28:30489Durchsuche

How can I effectively execute external programs and retrieve their output in Java?

Externe Programme in Java ausführen

In Ihrem Java-Programm versuchen Sie, ein externes Programm („program.exe“) mithilfe von Runtime.exec( ) Methode. Obwohl es keine Fehler erzeugt, scheint das Programm unwirksam zu sein.

Der bereitgestellte Code nutzt die Runtime.exec(params)-Methode, um das externe Programm zu starten. Diese Methode weist jedoch Einschränkungen bei der Verarbeitung von Eingabe- und Ausgabedaten zwischen dem Java-Programm und dem externen Prozess auf.

Um effektiv mit einem externen Programm zu interagieren und dessen Ausgabe abzurufen, können Sie die ProcessBuilder-Klasse verwenden. Hier ist ein Beispiel, das zeigt, wie das Programm „program.exe“ mit bestimmten Parametern ausgeführt wird:

<code class="java">ProcessBuilder processBuilder = new ProcessBuilder("C:\Users\user\Desktop\program.exe",
        "C:\Users\user\Desktop\images.jpg", "C:\Users\user\Desktop\images2.txt");
Process process = processBuilder.start();

InputStream inputStream = process.getInputStream();
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);

String line;
System.out.println("Output of running program.exe with parameters:");

while ((line = bufferedReader.readLine()) != null) {
    System.out.println(line);
}</code>

In diesem Code erstellen wir eine ProcessBuilder-Instanz mit den erforderlichen Parametern. Mit der Methode start() wird das externe Programm gestartet. Anschließend verwenden wir einen InputStream, um die Ausgabe des Programms zu lesen, konvertieren sie mit einem InputStreamReader in Zeichen und speichern sie schließlich zur einfacheren zeilenweisen Verarbeitung in einem BufferedReader.

Das obige ist der detaillierte Inhalt vonWie kann ich externe Programme effektiv ausführen und deren Ausgabe in Java abrufen?. 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