
Giới thiệu
Quản lý các tệp ZIP có thể là thách thức, đặc biệt là khi chúng chứa các tập tin nested. Hướng dẫn này sẽ hướng dẫn bạn thông qua quá trình của các cấu trúc ZIP bằng cách lấy tất cả các tập tin ZIP nội bộ vào một tập tin bằng cách sử dụng Aspose.ZIP cho .NET.
Tại sao nên tạo ZIP?
Tạo một lưu trữ ZIP phẳng cung cấp một số lợi thế:
- Hơn giản hóa quản lý tệp ZIP: Giảm sự phức tạp khi xử lý nhiều tệp.
- Thuyết xuất tất cả các nội dung ZIP có sẵn vào một tập tin: Tăng cường các tập tin để truy cập dễ dàng hơn.
- Giảm cấu trúc thư mục giảm bớt: Streamline tổ chức các tập tin.
Bảng nội dung
- Cài đặt ZIP Archive Processing trong C#
- Bước để tạo một file ZIP
- Tiết kiệm file ZIP
- Batch xử lý Multiple ZIP Archives
- Nhận giấy phép API miễn phí
- Kết luận và các nguồn lực bổ sung
Cài đặt ZIP Archive Processing trong C#
Để xử lý hiệu quả các tập tin ZIP **, chúng tôi sẽ sử dụng Aspose.ZIP cho .NET. Thư viện mạnh mẽ này cung cấp:
- Tự động chiết xuất ZIP và nén lại.
- Hỗ trợ nhiều định dạng lưu trữ: ZIP, TAR, GZip, và nhiều hơn nữa.
- Hành động xử lý hiệu quả của các tập tin lớn.
Cài đặt
Bạn có thể dễ dàng cài đặt thư viện thông qua NuGet:
PM> Install-Package Aspose.Zip
Alternatively, you can download the DLL from the Aspose Downloads Trang.
Bước 2: Tạo một file ZIP phẳng
Hãy xem xét các cấu trúc ZIP **sau đây:
parent.zip
├ first.txt
├ inner.zip
│ ├ file1.exe
│ └ data.bin
└ picture.gif
Sau khi lấp lánh, tất cả nội dung ZIP bên trong sẽ được tập trung vào ZIP mẹ:
flattened.zip
├ first.txt
├ picture.gif
├ file1.exe
└ data.bin
Code Ví dụ
Dưới đây là cách bạn có thể tự động chiết xuất các tệp ZIP sôi:
// Load the parent ZIP file
using (Archive parentZip = new Archive("parent.zip"))
{
List<ArchiveEntry> toDelete = new List<ArchiveEntry>();
List<string> newEntryNames = new List<string>();
List<MemoryStream> newStreams = new List<MemoryStream>();
foreach (ArchiveEntry entry in parentZip.Entries)
{
if (entry.Name.EndsWith(".zip", StringComparison.OrdinalIgnoreCase))
{
toDelete.Add(entry);
using (MemoryStream zipStream = new MemoryStream())
{
entry.Open().CopyTo(zipStream);
zipStream.Position = 0;
using (Archive innerZip = new Archive(zipStream))
{
foreach (ArchiveEntry innerEntry in innerZip.Entries)
{
using (MemoryStream entryStream = new MemoryStream())
{
innerEntry.Open().CopyTo(entryStream);
newEntryNames.Add(innerEntry.Name);
newStreams.Add(entryStream);
}
}
}
}
}
}
foreach (var entry in toDelete)
parentZip.DeleteEntry(entry);
for (int i = 0; i < newEntryNames.Count; i++)
parentZip.CreateEntry(newEntryNames[i], newStreams[i]);
parentZip.Save("flattened.zip");
}
Phương pháp này hiệu quả tự động chiết xuất các tập tin ZIP sơn, đảm bảo một dòng công việc mịn màng.
3.Save the Flattened ZIP File
Một khi bạn đã rút ra các nội dung ZIP mọc, hãy lưu tệp ZIP mọc bằng cách sử dụng dòng mã sau:
parentZip.Save("flattened.zip");
Điều này đảm bảo rằng bạn có một tập tin ZIP duy nhất mà không có thư mục mờ**, làm cho việc quản lý tệp dễ dàng hơn nhiều.
4.Batch xử lý Multiple ZIP Archives
Nếu bạn cần thiên bản lưu trữ ZIP đa dạng nằm trong một thư mục cụ thể, bạn có thể sử dụng đoạn mã sau đây:
string[] files = Directory.GetFiles("zip_folder", "*.zip");
foreach (string file in files)
{
using (Archive archive = new Archive(file))
{
archive.ExtractToDirectory("output_folder");
}
}
Phương pháp này cho phép tự động xử lý khối ZIP, tiết kiệm thời gian và nỗ lực.
Nhận giấy phép API miễn phí
Để mở khóa các tính năng đầy đủ của Aspose.ZIP, bạn có thể yêu cầu một giấy phép tạm thời miễn phí (http://purchase.aspose.com/temporary-license)**.
Để có tài liệu đầy đủ, hãy truy cập Aspose.ZIP Hướng dẫn. Nếu bạn có bất kỳ câu hỏi nào, cảm thấy tự do tham gia với cộng đồng trên *Forum Aspose.
Kết luận và tài nguyên bổ sung
Tổng hợp
Trong hướng dẫn này, chúng tôi bao gồm:
- Làm thế nào để phác thảo các tệp ZIP trong C#
- Khóa lưu trữ ZIP
- Giữ hồ sơ ZIP cuối cùng
- Thử lý nhiều tệp ZIP cùng một lúc
Với Aspose.ZIP cho .NET, bạn có thể chiết xuất và quản lý một cách hiệu quả các tập tin ZIP** trong các ứng dụng của bạn. bắt đầu tối ưu hóa dòng công việc xử lý ZIP của bạn hôm nay!
Tài nguyên bổ sung
Đối với các nhà phát triển muốn nâng cao sự hiểu biết của họ, xem xét các chủ đề này:
- C# Archive: Tìm hiểu làm thế nào để làm việc với các định dạng lưu trữ khác nhau trong C#.
- C# Decompress ZIP: Một hướng dẫn chi tiết về việc phá vỡ các tệp Zip bằng cách sử dụng C#.
- C# Extract File from ZIP: Hướng dẫn từng bước về việc lấy các tập tin cụ thể từ các tệp Zip.
- C# Open ZIP: Hiểu làm thế nào để mở và đọc các tệp Zip một cách hiệu quả.
- C# ZipArchive Extract to Directory: Tìm hiểu làm thế nào để sử dụng Zibarchive cho việc rút tập tin hiệu quả.
- C# Zipping File: Một hướng dẫn toàn diện về việc tạo các tệp ZIP trong C#.
- Tạo một Tệp ZIP C#: Khám phá các phương pháp khác nhau để tạo tệp zip trong các ứng dụng của bạn.
- Tạo Tệp ZIP C# .NET Core: Tập trung vào .Net Core, tìm hiểu các thực hành tốt nhất cho việc tạo tệp zip.
- Thuyết xuất Tệp ZIP trong C#: Các kỹ thuật để thu thập tệp zip trong các dự án của bạn.
- ** Làm thế nào để Zip File trong .NET với C#**: Một bước đi hoàn chỉnh trên các tập tin zipping bằng cách sử dụng .Net và C#.
Với các tài nguyên này, bao gồm .NET Core Create ZIP File, C# Archive và C# Decompress Z IP , bạn có thể mở rộng kỹ năng quản lý tập tin và xử lý trong C#.