向zip中添加文件

package com.archser.accession.util;

import java.io.File;
import net.lingala.zip4j.core.ZipFile;
import net.lingala.zip4j.model.ZipParameters;


/**
 * 向zip中添加文件,不使用解压后在压缩的方式
 * @ClassName:  AppendFileToZipUtil   
 * @Description:TODO(描述这个类的作用)   
 * @author: 李德才
 * @date:   2020年4月24日 下午5:23:24
 */

public class AppendFileToZipUtil {
	
	
	private static final String ZIP_FILE_PATH = "D:\\工作\\OFD.zip";
	private static final String APPEND_FILE_FILEPATH = "D:\\工作\\append.txt";

	public static void main(String[] args) {
		addFile(ZIP_FILE_PATH, APPEND_FILE_FILEPATH);
//		addFileByPath(ZIP_FILE_PATH, APPEND_FILE_FILEPATH, "45456/15616/1556");
	}

	/**
	 * 向压缩包的指定位置添加 @Time:2020年4月24日 - 下午5:06:02 @auto:李德才 @param: @param
	 * zipFilePath @param: @param appendFilePath @param: @param basicPath @return:
	 * void @throws
	 */
	public static void addFileByPath(String zipFilePath, String appendFilePath, String basicPath) {
		try {
			ZipParameters zipParameters = new ZipParameters();
			zipParameters.setRootFolderInZip(basicPath);
			ZipFile zipFile = new ZipFile(zipFilePath);
			zipFile.addFile(new File(appendFilePath), zipParameters);
		} catch (net.lingala.zip4j.exception.ZipException e) {
			e.printStackTrace();
		}
	}

	/**
	 * 向zip中添加文件 @Time:2020年4月24日 - 下午5:04:56 @auto:李德才 @param: @param
	 * zipFilePath @param: @param appendFilePath @return: void @throws
	 */
	public static void addFile(String zipFilePath, String appendFilePath) {
		try {
			ZipParameters zipParameters = new ZipParameters();
			ZipFile zipFile = new ZipFile(zipFilePath);
			zipFile.addFile(new File(appendFilePath), zipParameters);
		} catch (net.lingala.zip4j.exception.ZipException e) {
			e.printStackTrace();
		}
	}
	
	/**
	 * 向zip中添加文件夹
	 *@Time:2020年4月28日 - 下午2:49:28
	 * @auto:李德才
	 * @param: @param zipFilePath
	 * @param: @param appendFolderPath      
	 * @return: void      
	 * @throws
	 */
	public  static void addFolder(String zipFilePath, String appendFolderPath) {
		try {
			ZipParameters zipParameters = new ZipParameters();
			zipParameters.setRootFolderInZip(appendFolderPath);
			ZipFile zipFile = new ZipFile(zipFilePath);
			zipFile.addFolder(zipFilePath, zipParameters);
		} catch (net.lingala.zip4j.exception.ZipException e) {
			e.printStackTrace();
		}
	}

}

猜你喜欢

转载自blog.csdn.net/qq_36623327/article/details/107207552