Tạo tệp ZIP C#

Trong bài đăng trên blog này, chúng ta sẽ khám phá cách tạo tệp ZIP trong C# cho các tình huống khác nhau. Cho dù bạn muốn nén một tệp, nhiều tệp hay thậm chí toàn bộ thư mục, bạn có thể nhanh chóng tạo kho lưu trữ ZIP từ bên trong các ứng dụng .NET của mình. Hơn nữa, bạn cũng sẽ khám phá quy trình nhanh chóng để tạo tệp ZIP Trực tuyến và Miễn phí.

Tạo tệp ZIP trực tuyến miễn phí

Bạn có thể nén và sắp xếp các tệp của mình thành một gói tiện lợi duy nhất với trình tạo tệp ZIP miễn phí này. Hơn nữa, bạn cũng có thể chọn tệp từ hệ thống của mình hoặc liên kết trực tuyến để truy cập tệp. Bạn không cần nhập bất kỳ chi tiết thẻ tín dụng hoặc email nào để làm việc với tiện ích này.

Tạo tệp ZIP - Cài đặt API C#

Bạn có thể tạo một kho lưu trữ ZIP để nén nhiều tệp thành một tệp duy nhất. Chỉ cần định cấu hình Conholdate.Total cho .NET bằng cách truy cập nó từ phần Bản phát hành hoặc cài đặt nó bằng lệnh NuGet sau:

Install-Package Conholdate.Total 

Tạo ZIP cho tệp trong C#

Phần này bao gồm các cách tiếp cận khác nhau để tạo kho lưu trữ ZIP để nén tệp. Nó thảo luận về việc nén một tệp cũng như nhiều tệp vào một thư mục ZIP theo yêu cầu của bạn.

Tạo tệp ZIP cho một tệp duy nhất trong C#

Tìm hiểu quy trình từng bước tạo tệp ZIP cho một tệp bằng C#. Các bước sau và đoạn mã sẽ hướng dẫn bạn thực hiện quy trình và giải thích cách đóng gói tệp của bạn vào kho lưu trữ nén một cách hiệu quả.

  • Tạo một thể hiện của lớp FileStream và chỉ định tên cho tệp ZIP đầu ra.
  • Chỉ định tập tin sẽ được thêm vào kho lưu trữ.
  • Khởi tạo một thể hiện của lớp Archive.
  • Tạo kho lưu trữ ZIP đầu ra.

Đoạn mã sau đây trình bày cách tạo kho lưu trữ ZIP cho một tệp trong C#:

using (FileStream zipFile = File.Open(dataDir + "CompressSingleFile_out.zip", FileMode.Create))
{
    //Tập tin sẽ được thêm vào kho lưu trữ
    using (FileStream source1 = File.Open(dataDir + "test.txt", FileMode.Open, FileAccess.Read))
    {
        using (var archive = new Archive(new ArchiveEntrySettings()))
        {
            archive.CreateEntry("test.txt", source1);

            archive.Save(zipFile);
        }
    }
}

Tạo kho lưu trữ ZIP cho nhiều tệp trong C#

Các bước sau đây cho thấy cách tạo thư mục ZIP cho nhiều tệp trong C#:

  • Chỉ định các tệp nguồn sẽ được nén, cũng như tên của tệp đầu ra.
  • Tạo các mục nhập cho các tệp mục tiêu bằng phương thức CreateEntry.
  • Lưu tệp ZIP đầu ra chứa nhiều tệp.

Mã mẫu bên dưới cho biết cách tạo kho lưu trữ ZIP cho nhiều tệp trong C#:

using (FileStream zipFile = File.Open(dataDir + "CompressMultipleFiles_out.zip", FileMode.Create))
{
    using (FileStream source1 = File.Open(dataDir + "test.txt", FileMode.Open, FileAccess.Read))
    {
        using (FileStream source2 = File.Open(dataDir + "test2.txt", FileMode.Open, FileAccess.Read))
        {
            using (var archive = new Archive())
            {
                archive.CreateEntry("test.txt", source1);
                archive.CreateEntry("test1.txt", source2);
                archive.Save(zipFile, new ArchiveSaveOptions() { Encoding = Encoding.ASCII, ArchiveComment = "There are two poems from Canterbury corpus" });
            }
        }
    }
}

Tạo ZIP cho thư mục trong C#

Đôi khi bạn cần đóng gói toàn bộ thư mục, bao gồm tất cả các tệp trong đó thành tệp ZIP. Các bước bên dưới tóm tắt cách tạo tệp ZIP cho thư mục trong C#:

  • Tạo một đối tượng lớp FileStream và chỉ định tên tệp ZIP đầu ra.
  • Tạo một đối tượng của lớp Archive.
  • Đặt đường dẫn đến thư mục.
  • Tạo và xuất kho lưu trữ ZIP đầu ra.

Mẫu mã sau đây trình bày cách tạo kho lưu trữ ZIP cho một thư mục trong C#:

using (FileStream zipFile = File.Open(dataDir + "CompressDirectory_out.zip", FileMode.Create))
{
    using (Archive archive = new Archive())
    {
        DirectoryInfo corpus = new DirectoryInfo(dataDir + "zipfolder");
        archive.CreateEntries(corpus);
        archive.Save(zipFile);
    }
}

Nhận giấy phép đánh giá miễn phí

Bạn có thể yêu cầu giấy phép tạm thời miễn phí để đánh giá API ở mức tối đa mà không có bất kỳ hạn chế nào.

Conholdate.Total cho .NET - Tài nguyên Học tập

Bạn có thể xem qua tài nguyên sau để khám phá thêm các tính năng do API cung cấp.

Tổng hợp

Tạo tệp ZIP trong C# mở ra nhiều khả năng quản lý và chia sẻ dữ liệu hiệu quả. Tìm hiểu chi tiết được chia sẻ trong bài đăng blog này, bạn có thể dễ dàng thêm khả năng nén tệp vào ứng dụng của mình. Nó sẽ cho phép bạn tiết kiệm không gian, truyền dữ liệu dễ dàng và hợp lý hóa quy trình công việc của bạn. Trong trường hợp có bất kỳ thắc mắc nào, vui lòng viết thư cho chúng tôi tại diễn đàn hỗ trợ miễn phí.

Xem thêm