Java Runtime.getRuntime()을 사용하면 Java 프로그램에서 명령줄 프로그램을 실행할 수 있습니다. exec() 메서드는 명령 인수 배열을 사용하고 Process 개체를 반환합니다. 그러나 명령에서 출력을 가져오는 것은 완전히 다른 작업입니다.
명령 출력을 검색하기 위해 Process 개체는 각각 getInputStream() 및 getErrorStream()을 통해 입력 및 오류 스트림을 제공합니다. 다음은 출력을 가져와 인쇄하는 향상된 버전의 코드입니다.
Runtime rt = Runtime.getRuntime(); String[] commands = {"system.exe", "-get t"}; Process proc = rt.exec(commands); BufferedReader stdInput = new BufferedReader(new InputStreamReader(proc.getInputStream())); // Read the output from the command System.out.println("Here is the standard output of the command:\n"); String s = null; while ((s = stdInput.readLine()) != null) { System.out.println(s); }
입력 스트림에서 읽으면 명령의 출력에 액세스하고 인쇄할 수 있습니다. 명령 실행 중에 오류가 발생할 수 있으므로 getErrorStream()을 사용하여 오류 스트림도 확인하는 것이 좋습니다.
자세한 내용은 Process API 설명서를 참조하세요. 또는 프로세스 구성을 더 효과적으로 제어하려면 ProcessBuilder 클래스를 사용하는 것이 좋습니다.
위 내용은 Java의 Runtime.getRuntime()을 사용하여 명령 출력을 어떻게 캡처하고 표시할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!