Rumah  >  Artikel  >  Java  >  Bagaimana untuk Menyelesaikan Kegagalan Output Arah Semula dengan Kaedah exec() Runtime?

Bagaimana untuk Menyelesaikan Kegagalan Output Arah Semula dengan Kaedah exec() Runtime?

Linda Hamilton
Linda Hamiltonasal
2024-10-24 08:26:02630semak imbas

How to Resolve Redirection Output Failure with Runtime's exec() Method?

Menyelesaikan Masalah Kegagalan Output Arah Semula dengan Kaedah runtime exec()

Apabila menggunakan kaedah Runtime.exec() Java untuk melaksanakan arahan, mengubah hala output ke fail mungkin menghadapi masalah. Khususnya, fail yang dijana mungkin tidak dibuat dan strim mungkin tidak diarahkan dengan betul.

Untuk menangani masalah ini, gunakan ProcessBuilder untuk melakukan ubah hala dengan berkesan. Coretan kod berikut menunjukkan cara untuk mengubah hala kedua-dua stdout dan stderr ke fail:

ProcessBuilder builder = new ProcessBuilder("sh", "somescript.sh");
builder.redirectOutput(new File("out.txt"));
builder.redirectError(new File("out.txt"));
Process p = builder.start(); // may throw IOException

Dengan menggunakan ProcessBuilder, anda boleh mengubah hala output arahan ke fail yang ditentukan, memastikan output ditangkap untuk selanjutnya pemprosesan.

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Kegagalan Output Arah Semula dengan Kaedah exec() Runtime?. 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