1.首先在本地安装7-Zip(下载链接:https://www.7-zip.org/)
2.调用7-Zip压缩.zip文件:

/**
     * 生成.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文件:

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
/**
 *解压.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路径下可以找到解压后的文件
 }
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄