必用的jar:
<!-- https://mvnrepository.com/artifact/org.tukaani/xz -->
<dependency>
<groupId>org.tukaani</groupId>
<artifactId>xz</artifactId>
<version>1.5</version>
</dependency>
其他jar自行解决.
代码示例:
{
String outputPath = "D:\\usr\\xxx.7z";//压缩后存放的目录
String name = "xxx20180723.xlsx";//需要压缩的文件名称(包括后缀 例如.xlsx)
String input = "D:\\usr\\xxx\\" + name;//需要压缩的文件的路径
SevenZOutputFile sevenZOutputFile = null;
File file = new File(input);
try {
sevenZOutputFile = new SevenZOutputFile(new File(outputPath));
SevenZArchiveEntry entry = sevenZOutputFile.createArchiveEntry(file, name);
sevenZOutputFile.putArchiveEntry(entry);
FileInputStream in = new FileInputStream(file);
byte[] b = new byte[1024];
int count = 0;
while ((count = in.read(b)) > 0) {
// System.out.println("count:"+count);
sevenZOutputFile.write(b, 0, count);
}
in.close();
sevenZOutputFile.closeArchiveEntry();
sevenZOutputFile.close();
} catch (Exception e) {
e.printStackTrace();
}
}