RAR เป็น ZIP C#

การแปลงไฟล์ 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

ดูเพิ่มเติม