在java中将文件夹压缩为7z

时间:2016-08-09 14:16:24

标签: java compression directory 7zip lzma

我想使用java将文件夹压缩为.7z扩展名。我尝试使用下面的代码,但它正在创建一个新文件,并将所有源文件内容附加到一个文件中。任何人都可以帮我解决这个问题.....

Encoder encoder = new Encoder();
encoder.SetAlgorithm(2);
encoder.SetDictionarySize(8388608);
encoder.SetNumFastBytes(128);
encoder.SetMatchFinder(1);
encoder.SetLcLpPb(3,0,2);
encoder.SetEndMarkerMode(false);
encoder.WriteCoderProperties(outStream);
long fileSize;
fileSize = inputToCompress.length();
for (int i = 0; i < 8; i++)                                     
{
        outStream.write((int)(fileSize >>> (8 * i)) & 0xFF);
}                               

encoder.Code(inStream, outStream, -1, -1, null);

1 个答案:

答案 0 :(得分:0)

首先,使用tar压缩目录。之后使用当前代码压缩此文件。