List of usage examples for org.apache.commons.compress.archivers.sevenz SevenZOutputFile finish
public void finish() throws IOException
From source file:com.espringtran.compressor4j.processor.SevenZipProcessor.java
/** * Compress data//from w w w.j a v a 2s. c o m * * @param fileCompressor * FileCompressor object * @return * @throws Exception */ @Override public byte[] compressData(FileCompressor fileCompressor) throws Exception { ByteArrayOutputStream baos = new ByteArrayOutputStream(); SevenZOutputFile sevenZOutput = new SevenZOutputFile(new File(fileCompressor.getCompressedPath())); try { for (BinaryFile binaryFile : fileCompressor.getMapBinaryFile().values()) { SevenZArchiveEntry entry = sevenZOutput.createArchiveEntry(new File(binaryFile.getSrcPath()), binaryFile.getDesPath()); entry.setSize(binaryFile.getActualSize()); sevenZOutput.putArchiveEntry(entry); sevenZOutput.write(binaryFile.getData()); sevenZOutput.closeArchiveEntry(); } sevenZOutput.finish(); } catch (Exception e) { FileCompressor.LOGGER.error("Error on compress data", e); } finally { sevenZOutput.close(); baos.close(); } return baos.toByteArray(); }