2016年12月20日のブックマーク (1件)

  • Javaから外部プログラム「7-zip」を呼び出す。 - Qiita

    // googleにpingを打ってみる。 ProcessBuilder pb = new ProcessBuilder("ping","google.com","-n","5"); 自分はこの方法を以下のサイトで知ったのだが、この方法には問題があるらしい。 Java外部プロセス起動メモ(Hishidama's Java Process Memo) しかし、別プロセスからの出力量が多いときは、このプログラムは止まってしまう。 (試してみた感じでは、出力側(起動したプロセス)が標準出力or標準エラーのどちらかに512文字(たぶんUNICODE(UTF16)なので、1024バイト)を超えて出力するとNG) 外部プロセスは標準出力(や標準エラー)にがんがん書き込みたいのだが、その受け側であるProcessのInputStreamはバッファーサイズに限りがある。 したがって、データ量がそのバッファ

    Javaから外部プログラム「7-zip」を呼び出す。 - Qiita
    yutaka_maruoka
    yutaka_maruoka 2016/12/20
    なんと!