RAR เป็นรูปแบบไฟล์เก็บถาวรที่ใช้กันทั่วไป ซึ่งรองรับการบีบอัดข้อมูลแบบไม่สูญเสียข้อมูล บ่อยครั้งที่ผู้คนชอบ RAR มากกว่า ZIP เนื่องจากมีอัตราการบีบอัดข้อมูลที่ดีกว่า และทำให้ขนาดไฟล์เก็บถาวรมีขนาดเล็กลง อย่างไรก็ตาม ในบางกรณี คุณอาจต้องแปลงไฟล์ RAR เป็นไฟล์ ZIP บทความนี้ครอบคลุมวิธีการแปลงไฟล์ RAR เป็น ZIP โดยทางโปรแกรมใน C#
C# .NET API สำหรับการแปลง RAR เป็น ZIP
Aspose.ZIP for .NET คือ API การเก็บถาวรที่มีประสิทธิภาพซึ่งสนับสนุนการสร้างและจัดการรูปแบบไฟล์เก็บถาวรยอดนิยม เราจะใช้ API นี้เพื่อแปลงไฟล์ RAR เป็นรูปแบบ ZIP หากต้องการใช้ API คุณสามารถติดตั้งได้จาก NuGet หรือดาวน์โหลด DLL จาก ส่วนดาวน์โหลด
PM> Install-Package Aspose.Zip
แปลงไฟล์ RAR เป็น ZIP ใน C#
ไฟล์ RAR สามารถแปลงเป็นรูปแบบ ZIP ได้ภายในไม่กี่ขั้นตอนโดยใช้ Aspose.ZIP for .NET ต่อไปนี้เป็นขั้นตอนในการแปลงไฟล์ RAR เป็นไฟล์ ZIP ใน C#
สร้างอินสแตนซ์ของคลาส Archive สำหรับไฟล์ ZIP
โหลดไฟล์เก็บถาวร RAR โดยใช้คลาส RarArchive
วนซ้ำรายการของไฟล์เก็บถาวร RAR โดยใช้ชุด RarArchive.Entries
สำหรับแต่ละรายการใน RAR ให้ทำตามขั้นตอนต่อไปนี้:
แยกรายการไปยังวัตถุ MemoryStream โดยใช้เมธอด RarArchive.Entries[int].Extract(MemoryStream)
เพิ่มรายการไปยัง ZIP โดยใช้เมธอด Archive.CreateEntry(String, MemoryStream)
สุดท้าย บันทึกไฟล์ ZIP ที่เป็นผลลัพธ์โดยใช้เมธอด Archive.Save(String)
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแปลงไฟล์ RAR เป็นรูปแบบ ZIP ใน C#
// สร้างอินสแตนซ์ของคลาส Archive สำหรับไฟล์ ZIP
using (Archive zip = new Archive())
{
// โหลดไฟล์เก็บถาวร RAR
using (RarArchive rar = new RarArchive(@"D:\archvie.rar"))
{
// วนซ้ำรายการของไฟล์ RAR
for (int i = 0; i < rar.Entries.Count; i++)
{
// คัดลอกแต่ละรายการจาก RAR ไปยัง ZIP
if (!rar.Entries[i].IsDirectory)
{
var ms = new MemoryStream();
rar.Entries[i].Extract(ms);
ms.Seek(0, SeekOrigin.Begin);
zip.CreateEntry(rar.Entries[i].Name, ms);
}
else
zip.CreateEntry(rar.Entries[i].Name + "/", Stream.Null);
}
}
// บันทึกไฟล์ ZIP ที่เป็นผลลัพธ์
zip.Save("output.zip");
}
รับใบอนุญาต API ฟรี
คุณสามารถรับ ใบอนุญาตชั่วคราวฟรี เพื่อใช้ Aspose.ZIP for .NET โดยไม่มีข้อจำกัดในการประเมิน
บทสรุป
ในบทความนี้ คุณได้เรียนรู้วิธีแปลงไฟล์เก็บถาวร RAR เป็นรูปแบบ ZIP โดยทางโปรแกรมใน C# คำแนะนำทีละขั้นตอนและตัวอย่างโค้ดได้สาธิตการแปลงไฟล์ RAR เป็นไฟล์ ZIP ภายในไม่กี่ขั้นตอน คุณสามารถอ่าน เอกสาร ของ Aspose.ZIP for .NET เพื่อสำรวจคุณสมบัติอื่นๆ นอกจากนี้ คุณสามารถแบ่งปันคำถามของคุณกับเราผ่านทาง ฟอรัม