Rumah >Java >javaTutorial >Bagaimanakah Saya Boleh Menangkap dan Memaparkan Output Perintah Menggunakan Runtime.getRuntime() Java?

Bagaimanakah Saya Boleh Menangkap dan Memaparkan Output Perintah Menggunakan Runtime.getRuntime() Java?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-22 21:18:18855semak imbas

How Can I Capture and Display Command Output Using Java's Runtime.getRuntime()?

Mendapatkan Output Perintah dengan Runtime.getRuntime() Java

Java Runtime.getRuntime() membenarkan pelaksanaan program baris arahan daripada program Java. Kaedah exec()nya mengambil pelbagai hujah arahan dan mengembalikan objek Proses. Walau bagaimanapun, mendapatkan output daripada arahan adalah tugas yang berbeza sama sekali.

Untuk mendapatkan semula output arahan, objek Proses menyediakan input dan aliran ralat melalui getInputStream() dan getErrorStream(), masing-masing. Berikut ialah versi dipertingkat kod anda yang memperoleh dan mencetak output:

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);
}

Dengan membaca daripada aliran input, anda boleh mengakses dan mencetak output daripada arahan. Ambil perhatian bahawa anda mungkin menghadapi ralat semasa pelaksanaan perintah, jadi anda dinasihatkan untuk menyemak aliran ralat menggunakan getErrorStream().

Untuk maklumat lebih terperinci, rujuk dokumentasi API Proses. Sebagai alternatif, pertimbangkan untuk menggunakan kelas ProcessBuilder untuk mendapatkan lebih kawalan ke atas konfigurasi proses.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menangkap dan Memaparkan Output Perintah Menggunakan Runtime.getRuntime() Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn