
การแปลงไฟล์ RAR เป็นรูปแบบ ZIP เป็นข้อกำหนดทั่วไปเมื่อต้องจัดการกับไฟล์บีบอัด ZIP ได้รับการรองรับอย่างกว้างขวางในแพลตฟอร์มต่างๆ ทำให้เป็นตัวเลือกที่หลากหลายยิ่งขึ้นสำหรับการแชร์และจัดเก็บ ในโพสต์บล็อกนี้ เราจะแนะนำวิธีแก้ปัญหาโดยใช้ C# เพื่อแปลงไฟล์ RAR เป็นรูปแบบ ZIP
เหตุใดจึงควรแปลง RAR เป็น ZIP?
มีหลายเหตุผลในการแปลงไฟล์ RAR เป็น ZIP:
ความเข้ากันได้กับหลายแพลตฟอร์ม: ZIP ได้รับการสนับสนุนบนระบบและแพลตฟอร์มต่างๆ มากขึ้นเมื่อเทียบกับ RAR
การสนับสนุนดั้งเดิม: ระบบปฏิบัติการหลายระบบ เช่น Windows และ macOS สามารถแยกไฟล์ ZIP ดั้งเดิมได้โดยไม่ต้องใช้ซอฟต์แวร์ของบริษัทอื่น
ประสิทธิภาพการบีบอัด: การบีบอัด ZIP มีประสิทธิภาพและให้ความสมดุลระหว่างขนาดไฟล์และความเร็ว
ต่อไปเรามาดูการติดตั้ง คำแนะนำทีละขั้นตอน และตัวอย่างโค้ดกัน
ตัวแปลงไฟล์ RAR เป็น ZIP - การกำหนดค่า API ของ C#
คุณสามารถแปลงรูปแบบไฟล์บีบอัดได้โดยติดตั้ง Conholdate.Total สำหรับ .NET ด้วยคำสั่งติดตั้งต่อไปนี้ในคอนโซลตัวจัดการแพ็กเกจ NuGet:
PM> NuGet\Install-Package Conholdate.Total
แปลง RAR เป็น ZIP ใน C#
เพื่อให้บรรลุสิ่งนี้ เราจะใช้ไลบรารี Aspose.Zip ซึ่งเป็นส่วนหนึ่งของชุด Conholdate.Total สำหรับ .NET ด้านล่างนี้คือรายละเอียดทีละขั้นตอนในการแปลงไฟล์ RAR เป็นไฟล์ ZIP:
- เริ่มต้นการสร้างไฟล์ ZIP: เริ่มต้นด้วยการสร้างอ็อบเจ็กต์ Aspose.Zip.Archive ใหม่ที่จะแสดงไฟล์ ZIP
- เปิดและแตกไฟล์ RAR: โหลดไฟล์ RAR โดยใช้ Aspose.Zip.Rar.RarArchive และแตกไฟล์แต่ละรายการ ไฟล์และไดเร็กทอรีภายในไฟล์เก็บถาวร RAR จะถูกจัดการแยกกัน
- เพิ่มรายการในไฟล์เก็บถาวร ZIP: สำหรับแต่ละรายการ (ไฟล์หรือไดเร็กทอรี) ในไฟล์ RAR เราจะเพิ่มรายการดังกล่าวลงในไฟล์เก็บถาวร ZIP ไฟล์จะถูกเขียนเป็นรายการ ZIP ในขณะที่ไดเร็กทอรีจะถูกสร้างเป็นรายการว่าง
- บันทึกไฟล์ ZIP: หลังจากเพิ่มรายการทั้งหมดแล้ว ให้บันทึกไฟล์ ZIP ไปยังตำแหน่งเอาต์พุตที่ต้องการ
โค้ดตัวอย่างต่อไปนี้แสดงวิธีการแปลง RAR เป็น ZIP ใน C#:
using (Aspose.Zip.Archive zip = new Aspose.Zip.Archive())
{
using (Aspose.Zip.Rar.RarArchive rar = new Aspose.Zip.Rar.RarArchive("archvie.rar"))
{
for (int i = 0; i < rar.Entries.Count; i++)
{
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.Save("output.zip");
}
ใบอนุญาตประเมินผลฟรี
คุณสามารถรับ ใบอนุญาตชั่วคราวฟรี เพื่อลองใช้ฟีเจอร์นี้และฟีเจอร์อื่นๆ อีกมากมายในการจัดการหรือแปลงไฟล์เก็บถาวรแบบบีบอัดในสภาพแวดล้อมของคุณ
บทสรุป
การแปลงไฟล์ RAR เป็นไฟล์ ZIP ใน C# ต้องใช้การเรียกใช้เมธอดเพียงไม่กี่ครั้งโดยไม่ต้องกังวลกับรายละเอียดเล็กๆ น้อยๆ หรือโครงสร้างของรูปแบบไฟล์ที่บีบอัด เมื่อใช้วิธีนี้ คุณสามารถแยกไฟล์จากไฟล์เก็บถาวร RAR และบีบอัดไฟล์เหล่านั้นเป็นรูปแบบ ZIP ได้อย่างง่ายดาย วิธีนี้จะช่วยให้มั่นใจได้ว่าไฟล์ของคุณจะเข้ากันได้และเข้าถึงได้บนแพลตฟอร์มต่างๆ ได้ดีขึ้น อย่างไรก็ตาม หากคุณต้องการพูดคุยเกี่ยวกับคำถามใดๆ ของคุณ โปรดเขียนถึงเราที่ ฟอรัม
คำถามที่พบบ่อย
โครงสร้างไดเร็กทอรีได้รับการรักษาไว้ระหว่างการแปลงหรือไม่?
ใช่ รหัสจะรักษาโครงสร้างไดเร็กทอรีจากไฟล์ RAR ไว้เมื่อเพิ่มรายการลงในไฟล์เก็บถาวร ZIP
ฉันต้องมีซอฟต์แวร์ของบริษัทอื่นในการแยกไฟล์ ZIP หรือไม่?
ไม่ ไฟล์ ZIP สามารถแยกออกมาได้โดยตรงบนแพลตฟอร์มส่วนใหญ่ รวมถึง Windows และ macOS
ฉันสามารถป้องกันไฟล์ ZIP ด้วยรหัสผ่านได้หรือไม่
ใช่ Aspose.ZIP รองรับการเข้ารหัสและการป้องกันด้วยรหัสผ่านเมื่อสร้างไฟล์ ZIP