首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java Apache Commons压缩7zip,损坏文件错误

Java Apache Commons压缩7zip,损坏文件错误
EN

Stack Overflow用户
提问于 2014-02-23 03:43:11
回答 1查看 1.4K关注 0票数 0

7 zip文件(lzma)格式,想要压缩和加密。

我想使用Apache Commons Compress。

我正在使用此函数,但是,解压缩的文件已损坏。

谢谢

代码语言:javascript
复制
public static void main(String args[]) throws FileNotFoundException, IOException {
    SevenZOutputFile sevenZOutput = new SevenZOutputFile(new File("outFile.7z"));
    File entryFile = new File("D:/image.jpg");
    SevenZArchiveEntry entry = sevenZOutput.createArchiveEntry(entryFile, entryFile.getName());

    byte fileContent[] = new byte[(int)entryFile.length()];

    sevenZOutput.putArchiveEntry(entry);
    sevenZOutput.write(fileContent);
    sevenZOutput.closeArchiveEntry();
    sevenZOutput.close();         
}
EN

回答 1

Stack Overflow用户

发布于 2014-02-23 18:02:03

我想,好的,谢谢。如何对存档进行加密?

代码语言:javascript
复制
public static void main(String args[]) throws FileNotFoundException, IOException {
SevenZOutputFile sevenZOutput = new SevenZOutputFile(new File("outFile.7z"));
File entryFile = new File("D:/image.jpg");
SevenZArchiveEntry entry = sevenZOutput.createArchiveEntry(entryFile, entryFile.getName());
sevenZOutput.putArchiveEntry(entry);

FileInputStream in = new FileInputStream(entryFile);
                int len;
                byte buffer[] = new byte[8192];
                int transferedMegaBytes2=0;
                while ((len = in.read(buffer)) > 0) {
                    sevenZOutput.write(buffer, 0, len);                    
                    transferredBytes += len;
                    int transferedMegaBytes = (int) (transferredBytes / 1048576);                          
                    if(transferedMegaBytes>transferedMegaBytes2){
                    System.out.println("Transferred: " + transferedMegaBytes + " Megabytes.");
                    transferedMegaBytes2=transferedMegaBytes;
                    }
                }
sevenZOutput.closeArchiveEntry();
sevenZOutput.close();    
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21959526

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档