Heim  >  Artikel  >  Java  >  Wie führe ich externe Programme aus und lese deren Ausgabe in Java?

Wie führe ich externe Programme aus und lese deren Ausgabe in Java?

Linda Hamilton
Linda HamiltonOriginal
2024-10-27 15:37:02129Durchsuche

How to Execute External Programs and Read Their Output in Java?

Externe Programme effektiv ausführen

Wenn Sie versuchen, ein externes Programm aus einer Java-Anwendung auszuführen, ist es wichtig sicherzustellen, dass das Programm korrekt funktioniert und reagiert angemessen. In Ihrem Fall wollten Sie die ausführbare Datei „program.exe“ ausführen und ihr zwei Parameter übergeben. Auch wenn Ihr Code keine Fehlerbenachrichtigungen enthält, ist es offensichtlich, dass das Programm nicht die beabsichtigten Aktionen ausgeführt hat.

Die bereitgestellte Lösung nutzt die Funktionalität von „ProcessBuilder“, um die Ausführung eines externen Programms zu initiieren. Mit dieser Klasse können Sie den vollständigen Befehl und seine Parameter angeben und unterstützen das Lesen der vom ausgeführten Programm generierten Ausgabe.

Der optimierte Code:

<code class="java">Process process = new ProcessBuilder("C:\PathToExe\program.exe", "param1", "param2").start();
InputStream is = process.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String line;

System.out.printf("Output of running %s is:", Arrays.toString(args));

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

Dieser überarbeitete Code stellt dies sicher Das externe Programm wird durch Aufruf der Methode „start()“ von „ProcessBuilder“ ausgeführt. Anschließend werden alle vom ausgeführten Programm mithilfe von „getInputStream“, „InputStreamReader“ und „BufferedReader“ erzeugten Ausgaben erfasst und angezeigt.

Das obige ist der detaillierte Inhalt vonWie führe ich externe Programme aus und lese deren Ausgabe 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