Přehled

Archivy, které se skládají z položek, mají metodu createEntries pro kompresi celé složky. Tyto metody respektují strukturu adresářů a opakují se pro všechny podsložky. Můžete také přidat jednu položku souboru do libovolné podsložky kamkoli do archivu.

Jak vytvořit archiv ZIP

K přidání každého souboru do komprimovaného archivu se používá metoda createEntry. V těchto příkladech neurčujeme žádná nastavení komprese, takže bude použito výchozí nastavení pro zvolený formát.

    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");
    }

Tento kód vytvoří archiv ZIP s názvem "archive.zip" obsahující dva soubory: "data1.bin" a "data2.bin". Zde je rozpis toho, jak to funguje:

  • Automatická správa zdrojů: Kód využívá blok zkusit se zdroji k zajištění správné správy zdrojů. Tento blok po dokončení automaticky zavře objekt archivu.
  • Přidávání souborů do archivu: Uvnitř bloku kód používá metodu createEntry dvakrát k přidání souborů do archivu:
    - První položka se jmenuje "first.bin" a obsahuje obsah souboru "data1.bin".
    - Druhá položka se jmenuje "second.bin" a obsahuje obsah souboru "data2.bin".
  • Uložení archivu: Nakonec je zavolána metoda uložení objekt archivu pro uložení nově vytvořeného ZIP archivu se zadanými položkami do „archive.zip“.

Jak přidat soubory do archivu 7zip

Chcete-li přidat více příloh do jednoho archivu 7zip, používáme třídu SevenZipArchive spolu s metodami createEntry a save podobným způsobem.

    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");
    }

Následující kód provádí stejné akce jako předchozí, ale ve formátu 7-ZIP .

Archiv tvorby TAR

Rozšiřování archivů často zahrnuje extrahování, přidávání nových souborů a rekompresi, což je proces náročný na zdroje. Aspose.ZIP nabízí chytřejší řešení v Javě. Jednoduše otevřete archiv pro extrakci a přímo přidejte nové položky, vyhnete se zbytečnému přebalování. Tento efektivní přístup funguje pro archivní formát 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");
    }

Tato aplikace sdílí funkce předchozí, ale je přizpůsobena pro archivy s příponou TAR .

Jak vytvořit soubor GZ

Formáty pouze pro kompresi bez položek. Tyto kompresní formáty, včetně GZIP, LZ, BZIP2, XZ a Z, nepodporují položky souborů. Mohou současně komprimovat pouze jeden zdrojový soubor.

    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());
    }

Vytvořte TAR GZ

Aspose.ZIP nabízí pohodlný způsob, jak kombinovat pouze archivní formáty a formáty pouze pro kompresi pomocí jediné metody. Zde je příklad této funkce s kombinací TAR.GZ. Tato metoda využívá metodu saveGzipped .

    try (TarArchive archive = new TarArchive()) {
        archive.createEntry("first.bin", "data1.bin");
        archive.createEntry("second.bin", "data2.bin");
        archive.saveGzipped("archive.tar.gz");
    }

Vytvořte TARLZ

Nejprve vytvoříme objekt FileInputStream, připojený k souboru, který má být archivován. Dále vytvoříme objekt LzipArchive, nastavíme zdroj na dříve vytvořený objekt FileInputStream a archiv uložíme.

    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());
    }

Vytvořte soubor TAR BZ2

Aspose.ZIP nabízí podobné metody pro kompresi archivů s formáty LZIP, XZ, ZStandard a Z. Pro BZIP2 je však vyžadován jiný přístup.

    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");
        }
    }

Tato konstrukce kódu kombinuje použití dvou různých archivních formátů, jmenovitě TAR a Bzip2. Hlavním rysem je, že archiv TAR je nejprve vytvořen pomocí třídy TarArchive přidáním několika souborů pomocí metody createEntry a poté je tento archiv zkomprimován do formátu Bzip2 pomocí třídy Bzip2Archive .

Další podporované funkce Aspose.ZIP pro Java API

S knihovnou Aspose.ZIP v Javě můžete bez problémů zvládnout různé úkoly související s dokumenty souborů ZIP. Ať už potřebujete převádět formáty, slučovat soubory, upravovat obsah nebo extrahovat data, Aspose.ZIP poskytuje komplexní funkce pro zefektivnění vašeho pracovního postupu a zvýšení produktivity.

  

Support and Learning Resources

  
  

Aspose.Zip offers individual archive processing APIs for other popular development environments, listed below: