Trong hướng dẫn này, chúng tôi sẽ đề cập đến quy trình cách giải nén các tệp RAR bằng C#. Nó có tài nguyên để thiết lập môi trường phát triển, danh sách các bước xây dựng logic lập trình và mã mẫu có thể chạy được để giải nén các tệp RAR bằng C#. Bạn sẽ tìm hiểu các tùy chọn để giải nén các tệp đã chọn chỉ dựa trên các tiêu chí khác nhau.
Các bước giải nén tệp RAR bằng C#
- Đặt môi trường để sử dụng Aspose.Zip for .NET để giải nén tệp RAR
- Tải tệp RAR nguồn bằng đối tượng lớp RarArchive
- Phân tích cú pháp qua tất cả các mục trong tệp RAR
- Tạo luồng tệp bằng tên entry trong mỗi lần lặp lại
- Đọc tất cả các byte từ mục nhập nguồn và lưu chúng vào luồng tệp
- Lưu từng tệp trên đĩa sau khi ghi tất cả các byte
Các bước này trình bày chi tiết về cách trích xuất RAR bằng C#. Quá trình được bắt đầu bằng cách tải tệp RAR nguồn, sau đó phân tích cú pháp qua tất cả các mục trong đó. Tạo một tệp riêng cho từng mục nhập bằng tên của nó và lưu tất cả các byte từ kho lưu trữ vào tệp tương ứng trước khi lưu nó vào đĩa.
Mã để giải nén tệp RAR bằng C#
using System; | |
using System.IO; | |
using Aspose.Zip; | |
using Aspose.Zip.Rar; | |
class Program | |
{ | |
static void Main(string[] args) // Extract RAR | |
{ | |
// Set the license | |
new License().SetLicense("Aspose.Total.Product.Family.lic"); | |
// LLoad the RAR file | |
using (RarArchive rarArchive = new RarArchive("Sample.rar")) | |
{ | |
// Parse all the entries in the archive | |
foreach(var entry in rarArchive.Entries) | |
{ | |
// Create a file | |
var file = File.Create(entry.Name); | |
// Open the archive and save data to the file | |
using (var fileEntry = entry.Open()) | |
{ | |
byte[] data = new byte[1024]; | |
int bytesCount; | |
while ((bytesCount = fileEntry.Read(data, 0, data.Length)) > 0) | |
file.Write(data, 0, bytesCount); | |
// Close the file | |
file.Close(); | |
file.Dispose(); | |
} | |
} | |
} | |
Console.WriteLine("Done"); | |
} | |
} |
Bài viết này đã hướng dẫn chúng tôi quy trình giải nén RAR bằng C#. Nếu bạn muốn giải nén tệp ZIP, hãy tham khảo bài viết trên cách giải nén tệp ZIP trong C#.