JAVA調用外部安裝7-Zip壓縮和解壓zip文件

1.首先在本地安裝7-Zip(下載連接:https://www.7-zip.org/)
2.調用7-Zip壓縮.zip文件:spa

/**
     * 生成.zip壓縮文件
     * @param filePath 須要壓縮的文件路徑
     * @param zipFileName 生成壓縮文件的文件名(全路徑)
     * @throws Exception
     */
public static void generateZipFile(String filePath, String zipFileName) throws Exception {
        //zipToolPath 是本地7-Zip軟件的安裝路徑
        String zipToolPath = "C:/Program Files/7-Zip/7z.exe";
        zipToolPath = zipToolPath .replaceAll(" ", "\" \"");//全部空格都替換成帶有雙引號的空格
        String exec = zipToolPath + " a " + zipFileName + " -r *.*";
        File file = new File(filePath);
        Runtime.getRuntime().exec(exec,null,file);
        //執行成功後在ZipFileName路徑下能夠找到相應的壓縮文件
}

3.調用7-Zip解壓.zip文件:code

/**
 *解壓.zip文件
 * @param zipFilePath 須要解壓的文件路徑
 * @param targetFilePath 解壓後文件保存目錄
 * @param logPath log文件的路徑
 * @throws Exception
 */
public static void unZipFile(String zipFilePath, String targetFilePath,String logPath) throws Exception {
        //zipToolPath 是本地7-Zip軟件的安裝路徑
        String zipToolPath = "C:/Program Files/7-Zip/7z.exe";
        zipToolPath = zipToolPath .replaceAll(" ", "\" \"");//全部空格都替換成帶有雙引號的空格
        String exec = zipToolPath + " x " + zipFilePath + " -o"+targetFilePath +"-aoa -bse1 >"+ logPath;//將解壓過程寫入log文件中
        Runtime.getRuntime().exec(exec);
        //執行成功後在targetFilePath路徑下能夠找到解壓後的文件
 }
相關文章
相關標籤/搜索