Apache Commons Compress suporta ambos os fluxos de arquivo (por meio de compressores) e conteúdo estruturado (via ferramentas de arquivos).
A biblioteca pode ser utilizada para ambas as operações de compressão e descompressão, a trabalhar com um grande número de formatos de arquivo relativo, sendo uma das conhecidas soluções deste tipo para a comunidade Java.
A biblioteca não é perfeito, alguns problemas ainda estar em fase de desenvolvimento para cada formato de arquivo morto, mas no geral, se você precisa para suportar um grande número de formatos de compressão e não quer usar as bibliotecas individuais volumosos para cada formato, o Commons Compress pacote pode ser a sua melhor resposta p>
Características :.
:
O que é novo nesta versão:
- Os ásperos, InputStreams ar e tar pode deixar de ler a partir de um fluxo não tamponada em certos casos.
- IOUtils # salto pode pular menos bytes que solicitados, mesmo que mais pode ser lido a partir do fluxo.
- ArchiveStreams agora validar há uma entrada de corrente antes de ler ou escrever dados de entrada.
- ArjArchiveInputStream # canReadEntryData testou a entrada atual do fluxo, em vez de seu argumento.
- ChangeSet # apagar e deleteDir agora lidar adequadamente com as entradas sem nome.
- Adicionado algumas verificações nulos para melhorar a robustez.
- TarArchiveInputStream não conseguiu ler arquivos com campos de UID / GID vazias.
- TarArchiveInputStream agora de novo gera uma exceção quando encontra um arquivo truncado durante a leitura da última entrada.
- Adaptado TarArchiveInputStream # pular para o IOUtils modificados método # salto. Graças a BELUGA BEHR.
O que é novo na versão 1.7:.
- Suporte para compressão Snappy somente leitura
- suporte para arquivos compactados .Z somente leitura.
- ZipFile e ZipArchiveInputStream agora suportam a leitura entradas comprimidos usando o método encolhendo.
- GzipCompressorOutputStream suporta agora definir o nível de compressão e os dados do cabeçalho (nome, comentário, data de modificação, o sistema operacional e as bandeiras Extra)
- ZipFile e ZipArchiveInputStream agora suportam a leitura entradas comprimidos usando o método implodir.
- classes ZipFile eo arquivo 7z agora implementar fechados e pode ser usado em try-com-recursos construções.
O que é novo na versão 1.5:
- CompressorStreamFactory tem uma opção para criar fluxos de descompressão que descomprimir o pleno entrada para formatos que suportam múltiplos fluxos concatenados.
O que é novo na versão 1.4:
- Suporte para o formato XZ foi adicionado
O que é novo na versão 1.3:
- Suporte para o formato Pack200 foi adicionado
- somente leitura suporte para o formato usado pelo despejo Unix foi adicionado (8) ferramenta.
O que é novo na versão 1.2:
- Novos recursos:
- ZipArchiveEntry tem um novo método getRawName que fornece os bytes originais que compunham o nome. Isso pode permitir que o código do usuário para detectar a codificação.
- TarArchiveEntry fornece acesso às bandeiras que determinam se é um link simbólico arquivado, cachimbo ou outro & quot; incomum & quot; objeto do sistema de arquivo.
- erros corrigidos:
- ZipArchiveInputStream podia falhar com a & quot; truncado ZIP & quot; mensagem de erro para entradas entre 2 GBytes e 4 GBytes de tamanho.
- TarArchiveInputStream agora detecta entradas esparsas usando o formato oldgnu e devidamente informa que não é possível extrair seu conteúdo.
- O Javadoc para ZipArchiveInputStream # pular agora coincide com a implementação, o código tem sido feito mais defensiva.
- ArArchiveInputStream falha se entradas contêm apenas os esboços de userId ou groupId.
- ZipFile pode vazar recursos em algumas JDKs.
- BZip2CompressorInputStream lança IOException se córrego retornos subjacentes disponível () == 0. Removido o cheque.
- Chamar close () em inputStream retornado por CompressorStreamFactory.createCompressorInputStream () não fecha o fluxo de entrada de base.
- TarArchiveOutputStream # acabamento agora escreve todos os dados em buffer para o fluxo
- Alterações:
- ZipFile agora implementa finalizar que fecha o arquivo subjacente.
- Certain tar arquivos não reconhecido pelo ArchiveStreamFactory.
Requisitos :
- Java 5 ou superior
Comentários não encontrado