ไลบรารี Java ZIP สำหรับสร้างและจัดการไฟล์ ZIP

ไลบรารี Java แบบโอเพนซอร์สที่รองรับการสร้าง, การแยก, และการแก้ไขไฟล์ ZIP อย่างโปรแกรมเมติก รองรับ Unicode, การแยกส่วนและการรวมไฟล์อาร์ไคฟ์ผ่าน Java API.

ในโลกของการเขียนโปรแกรม Java การจัดการไฟล์ zip อย่างมีประสิทธิภาพเป็นความต้องการทั่วไป ไม่ว่าจะเป็นการบีบอัดไฟล์เพื่อการจัดเก็บหรือการถ่ายโอนข้อมูลผ่านเครือข่าย ไลบรารีที่เชื่อถือได้สามารถสร้างความแตกต่างอย่างมาก หนึ่งในอัญมณีของระบบนิเวศ Java คือไลบรารี Zip4j ซึ่งเป็นเครื่องมือที่ทรงพลังสำหรับทำงานกับไฟล์ zip มาดูกันว่าอะไรทำให้ Zip4j เป็นตัวเลือกที่นักพัฒนาต้องการและสำรวจคุณลักษณะและประโยชน์ของมัน พัฒนาโดย Srikanth Lingala, Zip4j ทำให้การดำเนินการไฟล์ zip ที่ซับซ้อนง่ายขึ้น ให้วิธีการที่ราบรื่นสำหรับนักพัฒนาในการทำงานกับไฟล์เก็บข้อมูลภายในแอปพลิเคชัน Java ของพวกเขา

Zip4j เป็นไลบรารี Java แบบโอเพ่นซอร์สที่ให้ส่วนต่อประสานใช้งานง่ายสำหรับการสร้าง, การแยกไฟล์, และการแก้ไขไฟล์ zip อย่างโปรแกรมเมติก ไลบรารี Zip4j มี API ที่ตรงไปตรงมาซึ่งช่วยให้นักพัฒนาซอฟต์แวร์สามารถทำการดำเนินการไฟล์ ZIP ที่พบบ่อยด้วยโค้ดที่น้อยที่สุด ไม่ว่าจะเป็นการสร้างไฟล์ ZIP ใหม่, การแยกไฟล์, หรือการอัปเดตคลังเก็บที่มีอยู่แล้ว การออกแบบที่เข้าใจง่ายของไลบรารีทำให้กระบวนการนำไปใช้เป็นเรื่องง่าย ไลบรารีรองรับไฟล์ zip ที่มีการป้องกันด้วยรหัสผ่านแบบอ่าน/เขียนและสตรีม รวมถึงรองรับรูปแบบ Zip64 ด้วย

ไลบรารี Zip4j พิสูจน์ว่าเป็นทรัพยากรที่มีค่าแก่ผู้พัฒนา Java ที่กำลังมองหาลิบรารีที่เชื่อถือได้และใช้งานง่ายสำหรับการจัดการไฟล์ ZIP ไลบรารีนี้รองรับวิธีการบีบอัดหลากหลายรวมถึง Deflate, Store, BZip2 และการเข้ารหัส AES ความยืดหยุ่นนี้ทำให้ผู้พัฒนาสามารถเลือกวิธีการบีบอัดที่เหมาะสมกับความต้องการของตนได้ ความง่ายในการใช้งาน ความสามารถในการเข้ารหัส และการสนับสนุนคุณลักษณะต่าง ๆ ทำให้เป็นตัวเลือกอันดับต้น ๆ สำหรับโครงการที่เกี่ยวข้องกับงานบีบอัดและขยายไฟล์ เมื่อผู้พัฒนาซอฟต์แวร์ยังคงสำรวจวิธีที่มีประสิทธิภาพในการจัดการไฟล์ ZIP ใน Java Zip4j โดดเด่นในฐานะโซลูชันที่แข็งแกร่งและหลากหลาย

Previous Next

เริ่มต้นกับ Zip4j

วิธีที่แนะนำในการใช้ Zip4j คือผ่าน Maven repository คุณสามารถใช้ Zip4j API ได้โดยตรงในโครงการ Maven ของคุณอย่างง่ายดายด้วยการกำหนดค่าที่เรียบง่าย

การพึ่งพา Maven ของ Jarchivelib

<dependency>
<groupId>net.lingala.zip4j</groupId>
<artifactId>zip4j </artifactId>
<version>2.11.5</version>
<type>jar</type> <dependency>

ติดตั้งผ่านคำสั่ง Git

 git clone https://github.com/srikanth-lingala/zip4j.git 

คุณสามารถดาวน์โหลดไลบรารีได้โดยตรงจาก GitHub

การสร้างไฟล์ Zip ด้วยไลบรารี Java

ด้วย Zip4j การสร้างไฟล์ ZIP ใหม่เป็นเรื่องง่ายมาก ไลบรารีนี้ทำให้ผู้พัฒนาซอฟต์แวร์สามารถสร้างและแก้ไขไฟล์ ZIP ได้ด้วยเพียงไม่กี่บรรทัดของโค้ด Java ไลบรารีนี้ให้ API ที่ใช้งานง่ายสำหรับการเพิ่มไฟล์ลงในไฟล์ ZIP ใหม่หรือที่มีอยู่แล้ว นอกจากนี้ยังรองรับฟีเจอร์ขั้นสูงหลายอย่าง เช่น การเพิ่ม, การแยก, การอัปเดต, การลบไฟล์จากไฟล์ ZIP อย่างโปรแกรมเมติก, การใช้ Unicode, การแบ่งและการรวมไฟล์อาร์ไคฟ์ภายในแอปพลิเคชัน Java ตัวอย่างต่อไปนี้แสดงให้เห็นว่าผู้พัฒนาซอฟต์แวร์สามารถสร้างไฟล์ ZIP ใหม่และเพิ่มไฟล์ลงในนั้นโดยใช้คำสั่ง Java ได้อย่างไร

วิธีสร้างไฟล์ ZIP ใหม่และเพิ่มไฟล์ลงในนั้นผ่าน Java API?

import net.lingala.zip4j.ZipFile;
import net.lingala.zip4j.model.ZipParameters;

public class ZipCreationExample {

    public static void main(String[] args) {
        try {
            // Create a new ZipFile object
            ZipFile zipFile = new ZipFile("example.zip");

            // Specify parameters for the file to be added
            ZipParameters parameters = new ZipParameters();
            parameters.setCompressionMethod(Zip4jConstants.COMP_DEFLATE); // Set compression method
            parameters.setCompressionLevel(Zip4jConstants.DEFLATE_LEVEL_NORMAL); // Set compression level

            // Add a file to the ZIP archive
            zipFile.addFile("file.txt", parameters);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

การสกัดไฟล์จากไฟล์ ZIP ผ่าน Java

Zip4j แบบโอเพนซอร์สทำให้กระบวนการแยกไฟล์จากไฟล์ ZIP ง่ายขึ้น โดยให้ API ที่ใช้งานง่ายสำหรับการแตกไฟล์ ผู้พัฒนาซอฟต์แวร์สามารถเลือกไฟล์ ZIP ที่ต้องการได้อย่างง่ายดายพร้อมกับกำหนดไดเรกทอรีปลายทาง นอกจากนี้ยังสามารถแยกไฟล์เดียวจากไฟล์ ZIP โดยตั้งชื่อและตำแหน่งใหม่ได้ ตัวอย่างต่อไปนี้แสดงให้เห็นว่าผู้พัฒนาซอฟต์แวร์สามารถแยกไฟล์จากไฟล์ ZIP ไปยังตำแหน่งปลายทางภายในแอปพลิเคชัน Java ได้อย่างง่ายดายเพียงใด

วิธีดึงไฟล์จากไฟล์ ZIP ภายในแอปพลิเคชัน Java?

import net.lingala.zip4j.ZipFile;
import net.lingala.zip4j.model.ZipParameters;

public class ExtractionExample {

    public static void main(String[] args) {
        try {
            // Specify the path to the ZIP archive
            ZipFile zipFile = new ZipFile("example.zip");

            // Specify the destination directory for extraction
            zipFile.extractAll("extracted_files/");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

การแยกและรวมไฟล์เก็บข้อมูลผ่าน Java

ไฟล์ขนาดใหญ่สามารถเป็นเรื่องท้าทายในการจัดการ แต่ Zip4j ทำให้ง่ายขึ้นโดยอนุญาตให้ผู้พัฒนาซอฟต์แวร์แยกไฟล์ ZIP เป็นส่วนย่อย ๆ ภายในแอปพลิเคชัน Java คุณลักษณะนี้เป็นประโยชน์สำหรับการถ่ายโอนหรือจัดเก็บไฟล์เก็บข้อมูลขนาดใหญ่อย่างมีประสิทธิภาพ นอกจากนี้ไลบรารียังรองรับการรวมไฟล์ที่แยกส่วนกลับเป็นไฟล์ ZIP ดั้งเดิมอย่างราบรื่น วิธีต่อไปนี้สามารถใช้เพื่อรวมไฟล์ zip ที่ถูกแยกเป็นหลายไฟล์เป็นไฟล์ zip เดียวได้

วิธีรวมไฟล์ ZIP หลายไฟล์เป็นไฟล์ ZIP เดียวผ่าน Java API?


new ZipFile("split_zip_file.zip").mergeSplitFiles(new File("merged_zip_file.zip"));

ใช้การเข้ารหัสและการป้องกันด้วยรหัสผ่าน

ความปลอดภัยเป็นด้านสำคัญของการบีบอัดไฟล์ และ Zip4j โดดเด่นในด้านนี้ ผู้พัฒนาซอฟต์แวร์สามารถเข้ารหัสและตั้งรหัสผ่านป้องกันไฟล์ ZIP ของตนได้อย่างง่ายดาย เพื่อให้ข้อมูลที่ละเอียดอ่อนปลอดภัย ไลบรารีรองรับอัลกอริทึมการเข้ารหัสหลายแบบ รวมถึง AES (Advanced Encryption Standard) Zip4j ช่วยให้ผู้พัฒนาสามารถเข้ารหัสไฟล์ ZIP ด้วยอัลกอริทึมการเข้ารหัสที่แข็งแกร่งและปกป้องด้วยรหัสผ่านตามตัวอย่างโค้ดต่อไปนี้

วิธีปกป้องข้อมูลโดยการเข้ารหัสไฟล์ ZIP ด้วย Java API?


import net.lingala.zip4j.ZipFile;
import net.lingala.zip4j.model.ZipParameters;

public class EncryptionExample {

    public static void main(String[] args) {
        try {
            // Create a new ZipFile object
            ZipFile zipFile = new ZipFile("encrypted.zip");

            // Specify encryption parameters
            ZipParameters parameters = new ZipParameters();
            parameters.setEncryptFiles(true);
            parameters.setEncryptionMethod(Zip4jConstants.ENC_METHOD_AES); // Use AES encryption
            parameters.setAesKeyStrength(Zip4jConstants.AES_STRENGTH_256); // Set key strength
            parameters.setPassword("secretpassword"); // Set password

            // Add files to the ZIP archive with encryption
            zipFile.addFile("file.txt", parameters);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

 ไทย