Visão geral
Arquivos que consistem em entradas possuem o método createEntries para compactar a pasta inteira. Tais métodos respeitam a estrutura de diretórios e são compostos recorrentemente para todas as subpastas. Além disso, você pode adicionar uma única entrada de arquivo a uma subpasta arbitrária em qualquer lugar do arquivo.Como fazer um arquivo ZIP
O método createEntry é usado para adicionar cada arquivo ao arquivo compactado. Nestes exemplos, não especificamos nenhuma configuração de compactação, portanto serão aplicadas as configurações padrão do formato escolhido.
try (Archive archive = new Archive()) {
archive.createEntry("first.bin", "data1.bin");
archive.createEntry("second.bin", "data2.bin");
// Add as many entries as you need
archive.save("archive.zip");
}
Este código cria um arquivo ZIP chamado "archive.zip" contendo dois arquivos: "data1.bin" e "data2.bin". Aqui está um resumo de como funciona:
- Gerenciamento automático de recursos: O código utiliza um bloco try-with-resources para garantir o gerenciamento adequado de recursos. Este bloco fecha automaticamente o objeto de arquivo após a conclusão.
- Adicionando arquivos ao arquivo: Dentro do bloco, o código emprega o método createEntry duas vezes para adicionar arquivos ao arquivo:
- A primeira entrada é chamada "first.bin" e contém o conteúdo do arquivo "data1.bin".
- A segunda entrada é chamada "second.bin" e contém o conteúdo do arquivo "data2.bin". - Salvando o arquivo: Finalmente, o método save é chamado o objeto de arquivo para salvar o arquivo ZIP recém-criado com as entradas especificadas em "archive.zip".
Como adicionar arquivos ao arquivo 7zip
Para adicionar vários anexos a um único arquivo 7zip, empregamos a classe SevenZipArchive junto com os métodos createEntry e save de maneira semelhante.
try (SevenZipArchive archive = new SevenZipArchive()) {
archive.createEntry("first.bin", "data1.bin");
archive.createEntry("second.bin", "data2.bin");
// Add as many entries as you need
archive.save("archive.7z");
}
O código a seguir executa as mesmas ações do anterior, mas para o formato 7-ZIP .
TAR criar arquivo
A expansão de arquivos geralmente envolve a extração, adição de novos arquivos e recompactação, que é um processo que consome muitos recursos. Aspose.ZIP oferece uma solução mais inteligente em Java. Basta abrir o arquivo para extração e adicionar novas entradas diretamente, evitando reembalagens desnecessárias. Esta abordagem eficiente funciona para o formato de arquivo TAR.
try (TarArchive archive = new TarArchive()) {
archive.createEntry("first.bin", "data1.bin");
archive.createEntry("second.bin", "data2.bin");
// Add as many entries as you need
archive.save("archive.tar");
}
Este aplicativo compartilha a funcionalidade do anterior, mas é adaptado para arquivos com a extensão TAR .
Como criar arquivo GZ
Formatos somente de compactação sem entradas. Esses formatos de compactação, incluindo GZIP, LZ, BZIP2, XZ e Z, não oferecem suporte a entradas de arquivo. Eles só podem compactar um único arquivo de origem por vez.
try (FileInputStream source = new FileInputStream("alice29.txt")) {
try (GzipArchive archive = new GzipArchive()) {
archive.setSource(source);
archive.save("archive.gz");
}
} catch (IOException ex) {
System.err.println(ex.getMessage());
}
Criar TAR GZ
Aspose.ZIP oferece uma maneira conveniente de combinar formatos somente de arquivo e somente compactação usando um único método. Aqui está um exemplo desta funcionalidade com a combinação TAR.GZ. Este método utiliza o método saveGzipped .
try (TarArchive archive = new TarArchive()) {
archive.createEntry("first.bin", "data1.bin");
archive.createEntry("second.bin", "data2.bin");
archive.saveGzipped("archive.tar.gz");
}
Criar TARLZ
Primeiro, criamos um objeto FileInputStream, conectado ao arquivo a ser arquivado. Em seguida, criamos o objeto LzipArchive, definimos a origem para o objeto FileInputStream criado anteriormente e salvamos o arquivo.
try (FileInputStream source = new FileInputStream("alice29.txt")) {
try (LzipArchive archive = new LzipArchive()) {
archive.setSource(source);
archive.save("archive.lz");
}
} catch (IOException ex) {
System.err.println(ex.getMessage());
}
Criar arquivo TAR BZ2
Aspose.ZIP oferece métodos semelhantes para compactar arquivos nos formatos LZIP, XZ, ZStandard e Z. No entanto, uma abordagem diferente é necessária para o BZIP2.
try (TarArchive tar = new TarArchive()) {
tar.createEntry("first.bin", "data1.bin");
tar.createEntry("second.bin", "data2.bin");
try (Bzip2Archive archive = new Bzip2Archive()) {
archive.setSource(tar);
archive.save("archive.tar.bz2");
}
}
Esta construção de código combina o uso de dois formatos de arquivo diferentes, nomeadamente TAR e Bzip2. A principal característica é que um arquivo TAR é primeiro criado usando a classe TarArchive adicionando vários arquivos a ele usando o método createEntry e, em seguida, esse arquivo é compactado no formato Bzip2 usando a classe Bzip2Archive .
Outros recursos da API Aspose.ZIP com suporte para Java
Com a biblioteca Aspose.ZIP em Java, você pode lidar perfeitamente com várias tarefas relacionadas a documentos de arquivo ZIP. Se você precisa converter formatos, mesclar arquivos, editar conteúdo ou extrair dados, o Aspose.ZIP oferece funcionalidade abrangente para agilizar seu fluxo de trabalho e aumentar a produtividade.
Support and Learning Resources
- Learning Resources
- Documentation
- Source Code
- API References
- Tutorial Videos
- Product Support
- Free Support
- Paid Support
- Blog
- Release Notes
- Why Aspose.ZIP for Java?
- Customers List
- Success Stories