เรนเดอร์ไฟล์ ZIP โดยใช้ C#

ไฟล์ ZIP ประกอบด้วยไฟล์หรือโฟลเดอร์บีบอัดตั้งแต่หนึ่งไฟล์ขึ้นไปเพื่อทำหน้าที่เป็นไฟล์เดียว สิ่งเหล่านี้ใช้กันอย่างแพร่หลายเพื่อประหยัดพื้นที่เก็บข้อมูลและเพิ่มประสิทธิภาพคอมพิวเตอร์ของคุณ คุณสามารถถ่ายโอนไฟล์และโฟลเดอร์ของคุณในไฟล์ ZIP จากที่หนึ่งไปยังอีกที่หนึ่งได้อย่างมีประสิทธิภาพ ในฐานะนักพัฒนา C# คุณสามารถเรนเดอร์ไฟล์ ZIP และดูเนื้อหาโดยทางโปรแกรมได้อย่างง่ายดาย บทความนี้จะเน้นไปที่วิธีเรนเดอร์ไฟล์ ZIP โดยใช้ C#

หัวข้อต่อไปนี้จะกล่าวถึง/ครอบคลุมในบทความนี้:

C# API เพื่อดูไฟล์ ZIP

สำหรับการเรนเดอร์ไฟล์ ZIP ฉันจะใช้ GroupDocs.Viewer for .NET API เป็น API โปรแกรมดูเอกสารอันทรงพลังที่รองรับไฟล์และเอกสารมากกว่า 170 ประเภท API มอบโซลูชันการดูเอกสารที่ยืดหยุ่นที่สุดในการเรนเดอร์และแสดงรูปแบบไฟล์ที่ใช้กันอย่างแพร่หลายทุกที่โดยไม่ต้องติดตั้งซอฟต์แวร์ภายนอกใดๆ นอกจากนี้ยังช่วยให้คุณสามารถดู PDF, HTML, XML, Microsoft Office Word, แผ่นงาน Excel, งานนำเสนอ PowerPoint, อีเมล Outlook, ไดอะแกรม Visio, โครงการ, ไฟล์เมตา, รูปภาพ และรูปแบบไฟล์อื่น ๆ ได้อย่างรวดเร็วและมีความเสี่ยงในการเขียนโปรแกรมน้อยลง

คุณสามารถ ดาวน์โหลด DLL ของ API หรือติดตั้งโดยใช้ NuGet

Install-Package GroupDocs.Viewer

แสดงผลไฟล์ ZIP ใน HTML

คุณสามารถเรนเดอร์ไฟล์ ZIP ในรูปแบบ HTML ได้โดยทำตามขั้นตอนง่ายๆ ด้านล่างนี้:

  1. สร้างอินสแตนซ์ของคลาส Viewer
  2. ระบุเส้นทางไฟล์อินพุต
  3. สร้างอินสแตนซ์ของคลาส HtmlViewOptions
  4. ระบุเส้นทางไฟล์เอาต์พุต
  5. เรียกเมธอด View() และส่งผ่าน HtmlViewOptions

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเรนเดอร์ไฟล์ ZIP ใน HTML โดยใช้ C#

// เริ่มต้นโปรแกรมดู
Viewer viewer = new Viewer("C:\\Files\\sample.zip");

// กำหนดตัวเลือกมุมมอง HTML
HtmlViewOptions viewOptions = HtmlViewOptions.ForEmbeddedResources("C:\\Files\\output.html");
viewOptions.RenderToSinglePage = true;

// สร้างมุมมอง
viewer.View(viewOptions);
แสดงผลไฟล์ ZIP ใน HTML

แสดงผลไฟล์ ZIP ใน HTML

คลาส Viewer เป็นคลาสหลักที่มีฟังก์ชันการทำงานเพื่อควบคุมกระบวนการแสดงผลเอกสาร View() วิธีการของคลาสนี้สร้างมุมมองของหน้าเอกสารทั้งหมด

คลาส HtmlViewOptions มีตัวเลือกสำหรับการแสดงผลเอกสารในรูปแบบ HTML วิธีการสร้าง ForEmbeddedResources สร้างอินสแตนซ์ใหม่ของคลาส HtmlViewOptions สำหรับการแสดงผลเป็น HTML ด้วยทรัพยากรที่ฝังตัว อย่างที่คุณเห็น ฉันได้ระบุเส้นทางของไฟล์เอาต์พุตไว้ในตัวอย่างโค้ดแล้ว

ดูรายละเอียดเพิ่มเติมเกี่ยวกับ “Document HTML Viewer” ได้ในเอกสารประกอบ

เรนเดอร์โฟลเดอร์เฉพาะจากไฟล์ ZIP ในรูปแบบ HTML

คุณสามารถแสดงโฟลเดอร์เฉพาะที่มีอยู่ในไฟล์ ZIP ในรูปแบบ HTML ได้โดยทำตามขั้นตอนง่ายๆ ที่ระบุด้านล่าง:

  1. สร้างอินสแตนซ์ของคลาส Viewer
  2. ระบุเส้นทางไฟล์อินพุต
  3. สร้างอินสแตนซ์ของคลาส HtmlViewOptions
  4. ระบุเส้นทางไฟล์เอาต์พุต
  5. ตั้งชื่อโฟลเดอร์ที่จะเรนเดอร์
  6. เรียกเมธอด View() และส่งผ่าน HtmlViewOptions

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเรนเดอร์โฟลเดอร์เฉพาะจากไฟล์ ZIP ใน HTML โดยใช้ C#

// เริ่มต้นโปรแกรมดู
Viewer viewer = new Viewer("C:\\Files\\sample.zip");

// กำหนดตัวเลือกมุมมอง HTML
HtmlViewOptions viewOptions = HtmlViewOptions.ForEmbeddedResources("C:\\Files\\output.html");
// ตั้งชื่อโฟลเดอร์
viewOptions.ArchiveOptions.Folder = "ThirdFolderWithItems";

// สร้างมุมมอง
viewer.View(viewOptions);
แสดงผลโฟลเดอร์เฉพาะจากไฟล์ ZIP ในรูปแบบ HTML

แสดงผลโฟลเดอร์เฉพาะจากไฟล์ ZIP ในรูปแบบ HTML

คลาส ArchiveOptions มีตัวเลือกสำหรับการเรนเดอร์ไฟล์เก็บถาวร ช่วยให้คุณสามารถแสดงโฟลเดอร์เฉพาะจากไฟล์ ZIP โดยระบุชื่อโฟลเดอร์ที่มีอยู่ในไฟล์เก็บถาวร

ดูเนื้อหาของไฟล์ ZIP ในรูปแบบ PDF

คุณสามารถแสดงไฟล์ ZIP ในเอกสาร PDF ได้โดยทำตามขั้นตอนง่าย ๆ ที่ระบุด้านล่าง:

  1. สร้างอินสแตนซ์ของคลาส Viewer
  2. ระบุเส้นทางไฟล์อินพุต
  3. สร้างอินสแตนซ์ของคลาส PdfViewOptions
  4. ระบุเส้นทางไฟล์เอาต์พุต
  5. เรียกเมธอด View() และส่ง PdfViewOptions

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเรนเดอร์ไฟล์ ZIP ในรูปแบบ PDF โดยใช้ C#

// เริ่มต้นโปรแกรมดู
Viewer viewer = new Viewer("C:\\Files\\sample.zip");

// กำหนดตัวเลือกมุมมอง PDF
PdfViewOptions options = new PdfViewOptions("C:\\Files\\output.pdf");

// สร้างมุมมอง
viewer.View(viewOptions);
ดูเนื้อหาของไฟล์ ZIP ในรูปแบบ PDF

ดูเนื้อหาของไฟล์ ZIP ในรูปแบบ PDF

คลาส PdfViewOptions มีตัวเลือกสำหรับการแสดงผลเอกสารในรูปแบบ PDF ดูรายละเอียดเพิ่มเติมเกี่ยวกับ “Document PDF Viewer” ได้ในเอกสารประกอบ

เรนเดอร์ไฟล์ ZIP เป็น JPG

คุณสามารถแสดงไฟล์ ZIP ในรูปแบบ JPG ได้โดยทำตามขั้นตอนง่าย ๆ ที่ระบุด้านล่าง:

  1. สร้างอินสแตนซ์ของคลาส Viewer
  2. ระบุเส้นทางไฟล์อินพุต
  3. สร้างอินสแตนซ์ของคลาส JpgViewOptions
  4. ระบุเส้นทางไฟล์เอาต์พุต
  5. เรียกเมธอด View() และส่งผ่าน JpgViewOptions

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเรนเดอร์ไฟล์ ZIP ในรูปแบบ JPG โดยใช้ C#

// เริ่มต้นโปรแกรมดู
Viewer viewer = new Viewer("C:\\Files\\sample.zip");

// กำหนดตัวเลือกมุมมอง JPG
JpgViewOptions options = new JpgViewOptions("C:\\Files\\output_page_{0}.jpg");

// สร้างมุมมอง
viewer.View(viewOptions);
เรนเดอร์ไฟล์ ZIP เป็น JPG

เรนเดอร์ไฟล์ ZIP เป็น JPG

คุณสามารถเรนเดอร์เอกสารเป็นรูปแบบรูปภาพ JPG หรือ PNG คลาส JpgViewOptions มีตัวเลือกสำหรับการแสดงผลเอกสารในรูปแบบ JPG ในทำนองเดียวกัน คลาส PngViewOptions มีตัวเลือกสำหรับการแสดงผลเอกสารในรูปแบบ PNG

ดูรายละเอียดเพิ่มเติมเกี่ยวกับ “Document Image Viewer” ได้ในเอกสารประกอบ

รับรายการโฟลเดอร์จากไฟล์ ZIP

คุณสามารถรับรายการโฟลเดอร์และโฟลเดอร์ย่อยทั้งหมดจากไฟล์ ZIP โดยทางโปรแกรมโดยทำตามขั้นตอนด้านล่าง:

  1. สร้างอินสแตนซ์ของคลาส Viewer
  2. ระบุเส้นทางไฟล์อินพุต
  3. สร้าง ViewInfoOptions
  4. สร้างอินสแตนซ์ ViewInfo โดยการเรียกเมธอด GetViewInfo()
  5. รับ ArchiveViewInfo
  6. แสดงผล

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีรับรายการโฟลเดอร์จากไฟล์ ZIP โดยใช้ C#

// เริ่มต้นโปรแกรมดู
Viewer viewer = new Viewer("C:\\Files\\sample.zip");

// สร้างตัวเลือกข้อมูลมุมมอง
ViewInfoOptions viewInfoOptions = ViewInfoOptions.ForHtmlView();
ViewInfo viewInfo = viewer.GetViewInfo(viewInfoOptions);

Console.WriteLine("File type: " + viewInfo.FileType);
Console.WriteLine("Pages count: " + viewInfo.Pages.Count);
Console.WriteLine("Folders: ");
Console.WriteLine(" - /");

string rootFolder = string.Empty;
viewInfoOptions.ArchiveOptions.Folder = rootFolder;

// รับข้อมูลการดู
ArchiveViewInfo viewFolderInfo = viewer.GetViewInfo(viewInfoOptions) as ArchiveViewInfo;

foreach (string subFolder in viewFolderInfo.Folders)
{
    Console.WriteLine($" - {subFolder}");
    PrintFolders(viewer, subFolder);
}
รับรายการโฟลเดอร์จากไฟล์ ZIP

รับรายการโฟลเดอร์จากไฟล์ ZIP

คลาส ViewInfoOptions มีตัวเลือกที่ใช้สำหรับการดึงข้อมูลเกี่ยวกับมุมมอง มีวิธีการต่างๆ มากมายในการรับข้อมูลการดูสำหรับรูปแบบเฉพาะ ฉันใช้เมธอด ForHtmlView() ซึ่งเริ่มต้นอินสแตนซ์ใหม่ของคลาส ViewInfoOptions เพื่อดึงข้อมูลเกี่ยวกับมุมมองเมื่อเรนเดอร์เป็น HTML

คลาส ViewInfo ให้ข้อมูลมุมมองสำหรับเอกสารทั่วไป GetViewInfo() วิธีการของคลาส Viewer ส่งกลับข้อมูลเกี่ยวกับมุมมองและข้อมูลเฉพาะเอกสาร

คลาส ArchiveViewInfo ให้ข้อมูลมุมมองสำหรับไฟล์เก็บถาวร

เรนเดอร์และเปลี่ยนชื่อไฟล์ ZIP

คุณสามารถเปลี่ยนชื่อไฟล์ ZIP ในขณะที่แสดงผลโดยทางโปรแกรมโดยทำตามขั้นตอนด้านล่าง:

  1. สร้างอินสแตนซ์ของคลาส Viewer
  2. ระบุเส้นทางไฟล์อินพุต
  3. สร้างอินสแตนซ์ของคลาส PdfViewOptions
  4. ระบุเส้นทางไฟล์เอาต์พุต
  5. ตั้งชื่อไฟล์ใหม่ที่จะแสดง
  6. เรียกเมธอด View() และส่ง PdfViewOptions

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการเปลี่ยนชื่อไฟล์ ZIP ขณะเรนเดอร์โดยใช้ C#

// เริ่มต้นโปรแกรมดู
Viewer viewer = new Viewer("C:\\Files\\sample.zip");

// กำหนดตัวเลือกมุมมอง PDF
PdfViewOptions viewOptions = new PdfViewOptions("C:\\Files\\output.pdf");
// ตั้งชื่อไฟล์ใหม่
viewOptions.ArchiveOptions.FileName = new FileName("MyFiles");

viewer.View(viewOptions);
เรนเดอร์และเปลี่ยนชื่อไฟล์ ZIP

เรนเดอร์และเปลี่ยนชื่อไฟล์ ZIP

คลาส ArchiveOptions ให้คุณสมบัติ FileName ซึ่งใช้เพื่อแสดงชื่อไฟล์ในส่วนหัว คุณสามารถตั้งชื่อที่แสดงใหม่ตามที่แสดงในตัวอย่างโค้ดข้างต้น ตามค่าเริ่มต้น จะแสดงชื่อของไฟล์ต้นฉบับ

รับใบอนุญาตฟรี

คุณสามารถลองใช้ API ได้โดยไม่มีข้อจำกัดในการประเมินโดยขอ ใบอนุญาตชั่วคราวฟรี

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีเรนเดอร์ไฟล์ ZIP โดยใช้ C# แล้ว คุณยังได้เรียนรู้วิธีการแปลงและดูเนื้อหาของไฟล์ ZIP ในรูปแบบ HTML, PDF และ JPG นอกจากนี้ คุณได้เรียนรู้วิธีรับรายการโฟลเดอร์และโฟลเดอร์ย่อยจากไฟล์ ZIP โดยทางโปรแกรมใน C# คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับ GroupDocs.Viewer สำหรับ .NET API ได้โดยใช้ เอกสารประกอบ ในกรณีที่มีความคลุมเครือ โปรดติดต่อเราที่ ฟอรั่ม

ดูสิ่งนี้ด้วย