Tổng quan

Các kho lưu trữ bao gồm các mục có phương thức CreateEntries để nén toàn bộ thư mục. Các phương thức như vậy tôn trọng cấu trúc thư mục và soạn thảo thường xuyên cho tất cả các thư mục con.
Ngoài ra, bạn có thể thêm một mục nhập tệp vào thư mục con tùy ý ở bất kỳ đâu trong kho lưu trữ.

Cách nén một thư mục

Khi cố gắng nén một thư mục trong khi vẫn giữ nguyên cấu trúc của nó, hãy cân nhắc sử dụng các tính năng trực quan của Aspose.ZIP. Sử dụng cài đặt nén của phiên bản Lưu trữ, chẳng hạn như thuộc tính PreserveDirectoryRoot, trong quá trình khởi tạo để duy trì cấu trúc thư mục. Bằng cách kết hợp cài đặt này, kho lưu trữ nén sẽ phản ánh hệ thống phân cấp ban đầu, đảm bảo việc trình bày dữ liệu có tổ chức. Điều này tỏ ra đặc biệt thuận lợi khi xử lý các cấu trúc thư mục mở rộng, vì nó đơn giản hóa việc điều hướng và truy xuất các tệp cụ thể mà không cần giải nén. Aspose.ZIP .Net API cung cấp giải pháp liền mạch để nén các thư mục trong khi vẫn tôn trọng cấu trúc vốn có của chúng, nâng cao hiệu quả của quá trình lưu trữ và truy xuất dữ liệu.
Mẫu:

    using (Archive archive = new Archive())
    {
        DirectoryInfo corpus = new DirectoryInfo(@"D:\Data");
        archive.CreateEntries(corpus);
        archive.Save("archive.zip");
    }

Sample 2:

Compose hierarchical structure with CreateEntry method

    using (Archive archive = new Archive())
    {
        FileInfo fi1 = new FileInfo("image.bmp");
        FileInfo fi2 = new FileInfo("lyrics.txt");
        archive.CreateEntry("data\\pictures\\photo.bmp", fi1);
        archive.CreateEntry("data\\text\\song.txt", fi2);
        archive.Save("archive.zip");
    }

Cách nén một thư mục bằng .NET

Phương thức CreateEntries có tham số thứ hai tùy chọn includeRootDirectory cho biết liệu thư mục gốc có cần được đưa vào kho lưu trữ hay không. Mặc định là đúng, vì vậy trong mẫu trên tất cả các mục lưu trữ sẽ nằm trong thư mục Dữ liệu. Nếu bạn chỉ muốn thêm nội dung thư mục thì chuyển sai vào đó. Sẽ có các thư mục hình ảnh và văn bản trong dữ liệu thư mục trong kho lưu trữ kết quả.

Cách nén thư mục trong 7-ZIP tôn trọng cấu trúc của nó

Phương pháp nén 7Zip giúp bảo toàn cấu trúc thư mục trong quá trình lưu trữ. Điều này có thể cải thiện tổ chức và sự thuận tiện khi làm việc với các kho lưu trữ. CreateEntries là phương pháp tương tự của kho lưu trữ 7Z. Nó cũng có tham số includeRootDirectory.
Để sử dụng tính năng nén 7-Zip với phương pháp bảo toàn cấu trúc thư mục trong quá trình lưu trữ, bên dưới sẽ cung cấp một ví dụ minh họa cách thực hiện điều này.

Create archive from directory

    using (SevenZipArchive archive = new SevenZipArchive())
    {
        DirectoryInfo corpus = new DirectoryInfo(@"D:\Data");
        archive.CreateEntries(corpus);
        archive.Save("archive.7z");
    }

Tổng quan về kho lưu trữ 7-ZIP

7-Zip, một tiện ích lưu trữ đa năng, vượt trội với tỷ lệ nén cao và hỗ trợ nhiều định dạng khác nhau. Đáng chú ý, 7-Zip cung cấp một cách thuận tiện để thêm tệp mà không cần áp dụng tính năng nén. Người dùng có thể tích hợp liền mạch các tệp vào 7-Zip Archives trong khi vẫn giữ nguyên cấu trúc dữ liệu gốc, đảm bảo tính toàn vẹn của nội dung của họ.

Cách nén thư mục trong TAR mà vẫn giữ nguyên cấu trúc của nó

Nén các thư mục ở định dạng TAR là cách phổ biến để lưu trữ và truyền dữ liệu hiệu quả. Tuy nhiên, việc bảo toàn cấu trúc thư mục trong quá trình nén là rất quan trọng để duy trì tổ chức và khả năng truy cập của các tệp được lưu trữ. Việc lưu trữ các thư mục ở định dạng TAR cung cấp một giải pháp thuận tiện cho vấn đề này. Mặc dù vậy, các phương pháp nén truyền thống thường bỏ qua cấu trúc thư mục gốc, gây khó khăn cho việc điều hướng và định vị các tệp cụ thể trong kho lưu trữ. Mặc định, tính năng nén TAR không duy trì cấu trúc thư mục gốc, điều này có thể gây bất tiện cho người dùng cần truy cập các tệp cụ thể trong kho lưu trữ. Ngoài việc nén, kho lưu trữ tar còn có phương thức tương tự để lưu trữ toàn bộ thư mục.

Sample 1:

Create archive from directory

    using (TarArchive archive = new TarArchive())
    {
        archive.CreateEntries(@"D:\Data");
        archive.Save("archive.tar");
    }

Sample 2:

Combine archiving directory and single file

    using (Archive archive = new Archive())
    {
        FileInfo fi1 = new FileInfo("image.bmp");
        FileInfo fi2 = new FileInfo("lyrics.txt");
        archive.CreateEntry("data\\pictures\\photo.bmp", fi1);
        archive.CreateEntry("data\\text\\song.txt", fi2);
        archive.Save("archive.zip");
    }

Tổng quan về kho lưu trữ TAR

TAR (Tape ARchive) là định dạng tệp phổ biến để lưu trữ và nén tệp đơn lẻ . Đây là định dạng không mất dữ liệu, nghĩa là không có dữ liệu nào bị mất trong quá trình nén. Các tệp TAR có thể được tạo trên bất kỳ hệ điều hành nào và được hỗ trợ bởi nhiều loại phần mềm.

Kỹ thuật nén nâng cao trong XAR với cấu trúc thư mục bảo toàn

XAR, một định dạng lưu trữ hiện đại, mang đến sự linh hoạt bằng cách cho phép người dùng tạo các kho lưu trữ trong khi vẫn giữ nguyên cấu trúc thư mục gốc. Cách tiếp cận độc đáo này phục vụ cho những người dùng yêu cầu kỹ thuật nén nâng cao mà không ảnh hưởng đến tổ chức tệp. Kho lưu trữ Xar sử dụng cách tiếp cận tương tự như tất cả các định dạng nêu trên.
Mẫu:

Create archive from directory

    using (FileStream xarFile = File.Open("archive.xar", FileMode.Create))
    {
        using (var archive = new XarArchive())
        {
            archive.CreateEntries(@"C:\folder", false);
            archive.Save(xarFile);
        }
    }

Tổng quan về kho lưu trữ XAR

XAR đơn giản hóa quá trình thêm tệp mà không cần nén, cung cấp cho người dùng sự linh hoạt trong việc quản lý kho lưu trữ của họ. Bằng cách sử dụng các lệnh XAR hoặc các công cụ phần mềm tương thích, người dùng có thể tích hợp liền mạch các tệp vào kho lưu trữ mà không cần gọi thuật toán nén. Phương pháp đơn giản này đảm bảo cấu trúc dữ liệu gốc vẫn còn nguyên vẹn, sẵn sàng để truy xuất khi cần.

Các tính năng Aspose.ZIP được hỗ trợ khác cho .NET API

Sử dụng thư viện Aspose.ZIP C# để chuyển đổi, hợp nhất, chỉnh sửa tài liệu tệp zip, trích xuất dữ liệu từ kho lưu trữ và hơn thế nữa!

  

Support and Learning Resources

  
  

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