Appearance
7z
io.github.pangju666.commons.compress.utils.SevenZUtils
| 方法名 | 返回值 | 用途 |
|---|---|---|
| is7z | boolean | 检查指定文件是否为有效的7z文件 |
| uncompress | void | 解压缩7z文件 |
| compress | void | 压缩文件/目录为7z文件 |
判断是否为7z文件
根据文件内容来判断文件类型,底层基于tika实现
java
File file = new File("file.zip");
SevenZUtils.is7z(file);
byte[] bytes = FileUtils.readFileToByteArray(file);
SevenZUtils.is7z(bytes);
InputStream inputStream = FileUtils.openInputStream(file);
SevenZUtils.is7z(inputStream);压缩
压缩单个文件或目录
java
File inputFile = new File("C:\logs");
File outputFile = new File("C:\output.zip");
SevenZUtils.compress(inputFile, outputFile);
SevenZOutputFile sevenZOutputFile = new SevenZOutputFile(outputFile);
SevenZUtils.compress(inputFile, sevenZOutputFile);压缩多个文件或目录
java
List<File> inputFiles = Arrays.asList(new File("C:\logs"), new File("C:\logs2"));
File outputFile = new File("C:\output.zip");
SevenZUtils.compress(inputFiles, outputFile);
SevenZOutputFile sevenZOutputFile = new SevenZOutputFile(outputFile);
SevenZUtils.compress(inputFiles, sevenZOutputFile);解压
java
File outputDir = new File("C:\logs");
File inputFile = new File("C:\output.zip");
ZipUtils.uncompress(inputFile, outputDir);
SevenZFile sevenZFile = SevenZFile.builder().setFile(inputFile).get();
SevenZUtils.uncompress(sevenZFile, outputDir);