Tinjauan

Arsip yang terdiri dari entri memiliki metode createEntries untuk mengompresi seluruh folder. Metode ini menghormati struktur direktori dan menyusun secara rekursif untuk semua subfolder. Anda juga dapat menambahkan satu entri file ke subfolder sembarang di arsip.

Cara membuat arsip ZIP

Metode createEntry digunakan untuk menambahkan setiap file ke arsip terkompresi. Dalam contoh-contoh ini, kami tidak menentukan pengaturan kompresi, jadi pengaturan default untuk format yang dipilih akan diterapkan.

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

Kode ini membuat arsip ZIP bernama "archive.zip" yang berisi dua file: "data1.bin" dan "data2.bin". Berikut adalah penjelasan bagaimana cara kerjanya:

  • Pengelolaan Sumber Daya Otomatis: Kode ini memanfaatkan blok try-with-resources untuk memastikan pengelolaan sumber daya yang tepat. Blok ini secara otomatis menutup objek arsip setelah selesai.
  • Menambahkan File ke Arsip: Di dalam blok, kode menggunakan metode createEntry dua kali untuk menambahkan file ke arsip:
    - Entri pertama bernama "first.bin" dan berisi konten file "data1.bin".
    - Entri kedua bernama "second.bin" dan berisi konten file "data2.bin".
  • Menyimpan Arsip: Akhirnya, metode save dipanggil pada objek arsip untuk menyimpan arsip ZIP yang baru dibuat dengan entri yang ditentukan ke "archive.zip".

Cara menambahkan file ke arsip 7zip

Untuk menambahkan beberapa lampiran ke arsip 7zip tunggal, kami menggunakan kelas SevenZipArchive bersama dengan metode createEntry dan save dengan cara yang serupa.

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

Kode berikut melakukan tindakan yang sama seperti yang sebelumnya, tetapi untuk format 7-ZIP .

Membuat arsip TAR

Memperluas arsip sering kali melibatkan ekstraksi, menambahkan file baru, dan mengompresi ulang, yang merupakan proses yang memakan banyak sumber daya. Aspose.ZIP menawarkan solusi yang lebih cerdas di Java. Cukup buka arsip untuk ekstraksi dan tambahkan entri baru secara langsung, menghindari pengemasan ulang yang tidak perlu. Pendekatan efisien ini bekerja untuk format arsip 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");
    }

Aplikasi ini berbagi fungsionalitas yang sama dengan yang sebelumnya, tetapi disesuaikan untuk arsip dengan ekstensi TAR .

Cara membuat file GZ

Format Hanya Kompresi tanpa Entri. Format kompresi ini, termasuk GZIP, LZ, BZIP2, XZ, dan Z, tidak mendukung entri file. Mereka hanya dapat mengompresi satu file sumber sekaligus.

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

Membuat TAR GZ

Aspose.ZIP menawarkan cara yang nyaman untuk menggabungkan format arsip-hanya dan kompresi-hanya menggunakan satu metode. Berikut adalah contoh fungsi ini dengan kombinasi TAR.GZ. Metode ini memanfaatkan metode saveGzipped .

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

Membuat TARLZ

Pertama, kami membuat objek FileInputStream yang terhubung ke file yang akan diarsipkan. Selanjutnya, kami membuat objek LzipArchive, mengatur sumber ke objek FileInputStream yang telah dibuat sebelumnya, dan menyimpan arsipnya.

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

Membuat file TAR BZ2

Aspose.ZIP menawarkan metode serupa untuk mengompresi arsip dengan format LZIP, XZ, ZStandard, dan Z. Namun, pendekatan yang berbeda diperlukan untuk 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");
        }
    }

Konstruksi kode ini menggabungkan penggunaan dua format arsip yang berbeda, yaitu TAR dan Bzip2. Fitur utama adalah bahwa arsip TAR pertama kali dibuat menggunakan kelas TarArchive dengan menambahkan beberapa file ke dalamnya menggunakan metode createEntry, dan kemudian arsip ini dikompresi ke dalam format Bzip2 menggunakan kelas Bzip2Archive .

Fitur API Aspose.ZIP untuk Java Lainnya yang Didukung

Dengan pustaka Aspose.ZIP di Java, Anda dapat menangani berbagai tugas yang terkait dengan dokumen file ZIP. Baik Anda perlu mengonversi format, menggabungkan file, mengedit konten, atau mengekstrak data, Aspose.ZIP menyediakan fungsionalitas komprehensif untuk menyederhanakan alur kerja Anda dan meningkatkan produktivitas.

  

Support and Learning Resources

  
  

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