7zipコマンド実装

javaのコードで7zipのコマンドを実行する実装例です。
ProcessBuilder を使用し、7zipを実行します。
windowsを想定したコマンドとなっているため、linux環境にする場合はコマンドの箇所を下記に置き換えること

String command = “7z a -tzip -v” + splitSizeMB + “m ” + outputPath + ” ” + zipFilePath;
ProcessBuilder processBuilder = new ProcessBuilder(“bash”, “-c”, command);
String zipFilePath = “./test.zip”;
String outputPath = “./test.zip.bin”;
int splitSizeMB = 1000; // 分割サイズ(メガバイト)

try {
ProcessBuilder processBuilder = new ProcessBuilder(
“C:\\Program Files\\7-Zip\\7z.exe”, // 7-Zipコマンドのパス
“a”, “-tzip”, “-v” + splitSizeMB + “m”,
outputPath + “part”, zipFilePath
);

Process process = processBuilder.start();
int exitCode = process.waitFor();
if (exitCode == 0) {
System.out.println(“ZIPファイルがバイナリ分割されました。”);
} else {
System.out.println(“分割中にエラーが発生しました。”);
}
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}

参考文献

https://docs.oracle.com/javase/jp/8/docs/api/java/lang/ProcessBuilder.html

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です