Rumah >Java >javaTutorial >Bagaimanakah Saya Boleh Menangkap dan Memaparkan Output Perintah Menggunakan 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!