鏈接
介紹
使用commons-exec
調用7-zip命令,實現壓縮和解壓縮功能,目前支持windows和linux。
解壓縮支持大部分主流格式,壓縮僅支持7z、zip和tar。
當前linux平臺的p7zip最新版本爲16.02,windows的7-zip最新版本爲19.00,
爲了保持版本號最新且一致,linux使用16.02,windows使用16.04。
如何使用
- maven座標
<dependency>
<groupId>com.xzixi.utils</groupId>
<artifactId>archive-tools</artifactId>
<version>1.1.1</version>
</dependency>
- 主要方法
public class ArchiveTools {
/**
* 壓縮
*
* @param archiveName 壓縮包絕對路徑,不需要包含擴展名
* @param archiveType 壓縮格式
* @param fileNames 壓縮文件,支持通配符
* @param timeout 超時時間,毫秒,必須大於0
* @param options 7z命令的其他可選參數
* @return 壓縮包絕對路徑
*/
public static String compress(String archiveName,
ArchiveType archiveType,
Collection<String> fileNames,
long timeout,
String... options);
/**
* 解壓縮
*
* @param archiveName 壓縮包絕對路徑
* @param outputDir 解壓輸出路徑
* @param timeout 超時時間,毫秒,必須大於0
* @param options 7z命令的其他可選參數
* @return 文件列表絕對路徑
*/
public static Collection<String> decompress(String archiveName,
String outputDir,
long timeout,
String... options);
}