วิธีสร้างไฟล์ ZIP ที่มีไฟล์ DOC ใน .NET

Aspose.ZIP for .NET ช่วยให้แอปพลิเคชัน C# สร้างไฟล์ ZIP จากไฟล์ DOC ได้โดยไม่ต้องเปิด 7-Zip, WinRAR หรือโปรแกรมจัดการไฟล์บีบอัดอื่น สร้างออบเจ็กต์ Archive เพิ่มแต่ละไฟล์เป็นรายการ รวมทรัพยากรที่จำเป็น แล้วเรียก Save เพื่อเขียนไฟล์ ZIP ที่เสร็จสมบูรณ์

API จะรวมเฉพาะไฟล์ที่แอปพลิเคชันระบุและไม่แก้ไขข้อความ การจัดรูปแบบ วัตถุที่ฝัง ข้อมูลเมตา หรือโครงสร้างภายในของเอกสาร จึงส่งข้อมูลต้นฉบับและสื่อประกอบเป็นแพ็กเกจเดียวได้ โดยเนื้อหาภายในของแต่ละไฟล์ยังคงเดิม

ตัวอย่าง C#: เพิ่มไฟล์ DOC ลงใน ZIP

ตัวอย่างสั้นนี้เพิ่มไฟล์ DOC หนึ่งไฟล์ลงในไฟล์ ZIP ใหม่และบันทึกผลลัพธ์เป็น archived_result.zip ให้กำหนด dir เป็นไดเรกทอรีที่เก็บไฟล์ต้นฉบับ

เพิ่มไฟล์ DOC ลงใน ZIP – C#

var dir = "full directory path";
using (var arch = new Archive())
{
   arch.CreateEntry("filename.doc", dir+"file.doc");
   arch.Save(dir+"archived_result.zip");
}

ติดตั้ง Aspose.ZIP for .NET

ติดตั้ง แพ็กเกจ Aspose.ZIP จาก NuGet และเพิ่มการอ้างอิงในโครงการ .NET การสร้าง ZIP ทำงานภายในกระบวนการของแอปพลิเคชัน จึงไม่ต้องติดตั้งโปรแกรมบีบอัดไฟล์แยกต่างหาก

Package Manager Console

PM> Install-Package Aspose.Zip

จัดเก็บไฟล์ DOC หนึ่งไฟล์ใน ZIP

เพิ่มไฟล์ต้นฉบับ DOC ลงในออบเจ็กต์ Archive ใหม่แล้วบันทึกผลลัพธ์ กำหนดชื่อรายการให้ชัดเจน หากต้องการให้ไฟล์ใน ZIP ใช้ชื่อที่เรียบง่ายหรือเป็นมาตรฐานมากขึ้น

รวมไฟล์ DOC หลายไฟล์

เรียก CreateEntry สำหรับไฟล์ DOC แต่ละไฟล์ก่อนบันทึก ไฟล์จากโฟลเดอร์ต้นทางต่างกันสามารถจัดไว้ในโฟลเดอร์ documents/ เดียวกันภายใน ZIP ได้

รวมไฟล์ DOC พร้อมทรัพยากรที่เกี่ยวข้อง

เพิ่มไฟล์ DOC พร้อมสื่อประกอบ เช่น ไฟล์แนบ แบบอักษร สื่อที่เชื่อมโยง ลายเซ็น และไฟล์ README รักษาพาธสัมพัทธ์ตามที่ระบบของผู้รับคาดไว้ เพื่อให้ใช้งานแพ็กเกจได้ทันทีหลังแตกไฟล์

บันทึกหรือส่งแพ็กเกจ DOC

บันทึก ZIP ลงในเครื่อง เขียนไปยังการตอบกลับของ ASP.NET หรือส่งตรงไปยังพื้นที่เก็บข้อมูลบนคลาวด์ผ่านสตรีมที่เขียนได้ โครงสร้างและชื่อรายการใน ZIP จะเหมือนเดิมไม่ว่าปลายทางจะเป็นที่ใด

ขั้นตอนสร้างไฟล์ ZIP จากไฟล์ DOC ด้วย C#

  1. ติดตั้ง Aspose.ZIP for .NET และเพิ่มการอ้างอิงแพ็กเกจ
  2. ระบุไฟล์ DOC และทรัพยากรที่เกี่ยวข้องทั้งหมดซึ่งต้องรวมในแพ็กเกจ
  3. สร้างออบเจ็กต์ Archive สำหรับไฟล์ ZIP ใหม่
  4. เรียก CreateEntry สำหรับไฟล์ต้นฉบับแต่ละไฟล์และกำหนดพาธภายใน ZIP
  5. กำหนดวิธีบีบอัดหรือการเข้ารหัสหากการส่งมอบต้องใช้
  6. เรียก Save พร้อมพาธปลายทางหรือสตรีมที่เขียนได้ แล้วปิดออบเจ็กต์และสตรีมที่เปิดอยู่

เพิ่มรายการทั้งหมดก่อนบันทึกไฟล์ ZIP เมธอด CreateEntries สามารถเพิ่มโครงสร้างไดเรกทอรีที่เตรียมไว้แบบวนซ้ำ ส่วนการเรียก CreateEntry แยกทีละรายการช่วยควบคุมชื่อและไฟล์ที่จะรวมได้ละเอียดกว่า

การสร้าง ZIP ไม่ได้แปลงรูปแบบ DOC

การสร้าง ZIP จากไฟล์ DOC เป็นการจัดเก็บไฟล์ ไม่ใช่การแปลงรูปแบบ ไฟล์จะอยู่ใน ZIP โดยไม่เปลี่ยนแปลง และเมื่อแตกไฟล์จะได้ข้อมูลไบต์ชุดเดิม Aspose.ZIP ไม่ได้ตีความหรือปรับเปลี่ยนข้อความ การจัดรูปแบบ วัตถุที่ฝัง ข้อมูลเมตา หรือโครงสร้างภายในของเอกสาร

หากต้องการแปลง DOC เป็น PDF, DOCX หรือ HTML ให้ใช้ไลบรารีสำหรับการแปลงไฟล์โดยเฉพาะ ส่วน ZIP เหมาะสำหรับการรวม ส่ง จัดเก็บ หรือป้องกันไฟล์ที่มีอยู่

เพิ่มไฟล์ที่เกี่ยวข้องกับ DOC ให้ครบถ้วน

แพ็กเกจ DOC ที่สมบูรณ์อาจมีทั้งไฟล์หลักและไฟล์แนบ แบบอักษร สื่อที่เชื่อมโยง ลายเซ็น และไฟล์ README Aspose.ZIP จะวางแต่ละองค์ประกอบเป็นรายการแยกกัน และไม่วิเคราะห์ไฟล์ DOC เพื่อค้นหาไฟล์ที่เกี่ยวข้องโดยอัตโนมัติ แอปพลิเคชันจึงต้องกำหนดรายการไฟล์และเพิ่มทรัพยากรที่จำเป็นทั้งหมดเอง

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

ควบคุมพาธและชื่อใน ZIP ที่มีไฟล์ DOC

พาธต้นทางบอก .NET ว่าต้องอ่านไฟล์จากที่ใด ส่วนชื่อรายการกำหนดตำแหน่งของไฟล์ใน ZIP ตัวอย่างเช่น ไฟล์จากโฟลเดอร์ทำงานในเครื่องสามารถบันทึกเป็น `documents/file.doc` ได้โดยไม่เปิดเผยพาธจริงของเครื่อง

ใช้เครื่องหมายทับในพาธ ZIP เพื่อให้ใช้งานข้ามแพลตฟอร์มได้ รักษาตัวพิมพ์เล็กและใหญ่ให้สม่ำเสมอ และปฏิเสธพาธแบบสัมบูรณ์หรือส่วนที่ย้อนขึ้นไปยังโฟลเดอร์แม่ เช่น ../ ตรวจสอบชื่อซ้ำเมื่อรับไฟล์จากหลายโฟลเดอร์ด้วย

ไฟล์ DOC จะบีบอัดได้มากเพียงใด

ข้อความทั่วไปอาจลดขนาดได้มาก แต่เอกสาร Office สมัยใหม่และไฟล์ PDF มักบีบอัดมาแล้วจึงประหยัดพื้นที่เพิ่มเติมได้ไม่มาก แม้ขนาดจะลดลงไม่มาก ZIP ยังช่วยรวมทุกอย่างเป็นไฟล์เดียว มีโครงสร้างโฟลเดอร์ที่แน่นอน มีข้อมูลตรวจสอบความสมบูรณ์ และเลือกป้องกันด้วยรหัสผ่านได้

Deflate เป็นตัวเลือกเริ่มต้นที่ใช้งานร่วมกับเครื่องมือได้หลากหลาย ส่วนโหมดจัดเก็บโดยไม่บีบอัดเหมาะเมื่อความเร็วในการแพ็กสำคัญกว่าขนาดและรายการส่วนใหญ่บีบอัดมาแล้ว ควรทดสอบกับชุดไฟล์จริงแทนการคาดหวังอัตราบีบอัดเดียวกันสำหรับไฟล์ DOC ทุกชุด

ป้องกัน ZIP ที่มีไฟล์ DOC ด้วยรหัสผ่าน

รายการที่เป็นความลับสามารถป้องกันด้วย ZipCrypto แบบดั้งเดิมหรือการเข้ารหัส AES เลือก AES เมื่อโปรแกรมแตกไฟล์ของผู้รับรองรับ และใช้ ZipCrypto เฉพาะเมื่อต้องรองรับเครื่องมือรุ่นเก่า

อ่านรหัสผ่านจากการกำหนดค่าที่ปลอดภัย อย่าเขียนไว้ในซอร์สโค้ดหรือบันทึกระบบ ส่งรหัสผ่านผ่านช่องทางอื่นที่ไม่ใช่ช่องทางเดียวกับไฟล์ ZIP และตรวจสอบก่อนส่งว่าผู้รับเปิดวิธีเข้ารหัสที่เลือกได้

แนวทางใช้งาน ZIP กับไฟล์ DOC ในระบบจริง

- ตรวจสอบว่าไฟล์ต้นฉบับและทรัพยากรที่จำเป็นมีอยู่ครบก่อนเขียน ZIP - จำกัดจำนวนไฟล์ ขนาดของแต่ละไฟล์ ขนาดรวม และตำแหน่งต้นทางที่อนุญาตสำหรับข้อมูลที่ไม่น่าเชื่อถือ - ปรับชื่อรายการให้เป็นมาตรฐานและตรวจสอบความถูกต้อง เพื่อป้องกันพาธที่ไม่ปลอดภัยเมื่อแตกไฟล์ - เขียนไปยังตำแหน่งชั่วคราวก่อน แล้วจึงย้าย ZIP ที่เสร็จสมบูรณ์ไปยังปลายทางหลังจาก `Save` สำเร็จ - ใช้สตรีมที่เขียนได้เมื่อส่ง ZIP กลับจาก ASP.NET หรือส่งตรงไปยังพื้นที่เก็บข้อมูลแบบออบเจ็กต์ - ปิด `Archive` และสตรีมอย่างแน่นอน พร้อมรายงานไฟล์ที่เกี่ยวข้องซึ่งขาดหายไปโดยไม่เปิดเผยข้อมูลลับหรือพาธในเครื่อง - กำหนดลำดับรายการและเวลาประทับให้คงที่ หากกระบวนการต้องสร้าง ZIP ที่ทำซ้ำแล้วได้ผลเหมือนเดิม

สร้าง ZIP จากไฟล์ DOC ออนไลน์

ต้องการรวมไฟล์โดยไม่เขียนโค้ดใช่ไหม ใช้บริการ สร้าง ZIP ออนไลน์ ได้ฟรีจากเบราว์เซอร์

  ไม่ต้องติดตั้งโปรแกรมบีบอัดไฟล์บนเครื่อง
  ไม่ต้องตั้งค่า API หรือเขียนโค้ด C#
  อัปโหลดไฟล์ DOC และทรัพยากรที่เกี่ยวข้อง
  ดาวน์โหลดไฟล์ ZIP ที่สร้างเสร็จแล้ว

แหล่งข้อมูล Aspose.ZIP for .NET

คำถามที่พบบ่อย

1. จะสร้างไฟล์ ZIP จากไฟล์ DOC ด้วย C# ได้อย่างไร

สร้างออบเจ็กต์ Archive เรียก CreateEntry พร้อมชื่อรายการและพาธของไฟล์ต้นฉบับ DOC จากนั้นเรียก Save พร้อมพาธปลายทางหรือสตรีม

2. เพิ่มไฟล์ DOC หลายไฟล์ลงใน ZIP เดียวกันได้หรือไม่

ได้ เรียก CreateEntry สำหรับแต่ละไฟล์ก่อนบันทึก และตั้งชื่อแต่ละรายการใน ZIP ไม่ให้ซ้ำกัน

3. ไฟล์ที่เกี่ยวข้องจะถูกเพิ่มโดยอัตโนมัติหรือไม่

ไม่ ระบบจะรวมเฉพาะไฟล์ที่แอปพลิเคชันส่งให้ และไม่วิเคราะห์ DOC เพื่อค้นหาไฟล์ที่เกี่ยวข้อง ต้องเพิ่มทรัพยากรที่จำเป็นแต่ละรายการอย่างชัดเจน

4. การสร้าง ZIP จะแปลง DOC เป็นรูปแบบอื่นหรือไม่

ไม่ ไฟล์ DOC จะคงเดิมภายใน ZIP การแปลงเป็น PDF, DOCX หรือ HTML เป็นอีกกระบวนการหนึ่ง

5. เข้ารหัส ZIP ที่มีไฟล์ DOC ได้หรือไม่

ได้ Aspose.ZIP รองรับการป้องกันด้วยรหัสผ่านผ่าน ZipCrypto และ AES ให้เลือกวิธีที่โปรแกรมของผู้รับรองรับเมื่อต้องแตกไฟล์