>  기사  >  Java  >  Java에서 외부 프로그램을 실행하고 출력을 읽는 방법은 무엇입니까?

Java에서 외부 프로그램을 실행하고 출력을 읽는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-10-27 15:37:02129검색

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

효과적인 외부 프로그램 실행

Java 애플리케이션에서 외부 프로그램을 실행하려고 할 때 프로그램이 올바르게 작동하고 작동하는지 확인하는 것이 중요합니다. 적절하게 반응합니다. 귀하의 경우 "program.exe" 실행 파일을 실행하고 여기에 두 개의 매개변수를 전달하려고 했습니다. 코드에 오류 알림이 없지만 프로그램이 의도한 작업을 수행하지 않은 것이 분명합니다.

제공된 솔루션은 "ProcessBuilder" 기능을 활용하여 외부 프로그램 실행을 시작합니다. 이 클래스를 사용하면 전체 명령과 해당 매개변수를 지정할 수 있으며 실행된 프로그램에서 생성된 출력을 읽을 수 있는 지원이 포함됩니다.

최적화된 코드:

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

이 수정된 코드는 다음을 보장합니다. 외부 프로그램은 "ProcessBuilder"의 "start()" 메소드를 호출하여 실행됩니다. 그런 다음 "getInputStream", "InputStreamReader" 및 "BufferedReader"를 사용하여 실행된 프로그램에서 생성된 모든 출력을 수집하고 표시합니다.

위 내용은 Java에서 외부 프로그램을 실행하고 출력을 읽는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.