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!