---
title: "เปรียบเทียบเอกสารใน C#"
---

การเปรียบเทียบเอกสารเป็นกระบวนการที่ระบุการเปลี่ยนแปลงระหว่างเอกสารสองฉบับและมีการเปลี่ยนแปลงเป็นการแก้ไข กระบวนการนี้เปรียบเทียบเอกสารสองฉบับใดๆ รวมถึงเวอร์ชันของเอกสารเฉพาะฉบับเดียว จากนั้นการเปลี่ยนแปลงระหว่างเอกสารทั้งสองจะแสดงเป็นการแก้ไขในเอกสารฉบับแรก

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

แทนที่จะค้นหาความแตกต่างระหว่างเอกสารหรือเวอร์ชันต่างๆ ด้วยตนเอง คุณสามารถใช้ Aspose.Words เพื่อเปรียบเทียบเอกสารและรับการเปลี่ยนแปลงเนื้อหาในรูปแบบ ส่วนหัว/ส่วนท้าย ตาราง และอื่นๆ ได้

บทความนี้อธิบายวิธีการเปรียบเทียบเอกสารและวิธีการระบุคุณสมบัติการเปรียบเทียบขั้นสูง

```

**ลองออนไลน์**

คุณสามารถเปรียบเทียบเอกสารสองฉบับทางออนไลน์ได้โดยใช้เครื่องมือ [การเปรียบเทียบเอกสารออนไลน์](https://products.aspose.app/words/comparison)

โปรดทราบว่าเครื่องมือนี้ใช้วิธีการเปรียบเทียบตามที่อธิบายไว้ด้านล่างเพื่อให้แน่ใจว่าได้รับผลลัพธ์ที่เท่าเทียมกัน ดังนั้นคุณจะได้รับผลลัพธ์เดียวกันแม้จะใช้เครื่องมือเปรียบเทียบออนไลน์หรือโดยใช้วิธีเปรียบเทียบใน Aspose.Words

```

## ข้อจำกัดและรูปแบบไฟล์ที่รองรับ {#limitations-and-supported-file-formats}

การเปรียบเทียบเอกสารเป็นคุณลักษณะที่ซับซ้อนมาก การรวมเนื้อหามีหลายส่วนที่ต้องวิเคราะห์เพื่อรับรู้ความแตกต่างทั้งหมด สาเหตุของความซับซ้อนนี้เกิดจากการที่ Aspose.Words มีเป้าหมายเพื่อให้ได้ผลลัพธ์การเปรียบเทียบแบบเดียวกับอัลกอริธึมการเปรียบเทียบ Microsoft Word

ข้อจำกัดทั่วไปสำหรับเอกสารสองฉบับที่จะเปรียบเทียบคือ ต้องไม่มีการแก้ไขก่อนที่จะเรียกวิธีการเปรียบเทียบ เนื่องจากข้อจำกัดนี้มีอยู่ใน Microsoft Word

```

โปรดทราบว่าคุณสามารถเปรียบเทียบเอกสารสองฉบับใดก็ได้ภายใน [รูปแบบเอกสารที่รองรับ](/words/th/net/supported-document-formats/) โดยพื้นฐานแล้ว คุณสามารถเปรียบเทียบออบเจ็กต์เอกสารและแม้แต่คุณสามารถสร้างออบเจ็กต์เหล่านั้นตั้งแต่เริ่มต้นโดยไม่ต้องมีรูปแบบเฉพาะใดๆ เลย

```

## เปรียบเทียบสองเอกสาร {#compare-two-documents}

เมื่อคุณเปรียบเทียบเอกสาร ความแตกต่างของเอกสารหลังกับเอกสารฉบับแรกจะแสดงเป็นการแก้ไขกับเอกสารฉบับแรก เมื่อคุณแก้ไขเอกสาร การแก้ไขแต่ละครั้งจะมีการแก้ไขของตัวเองหลังจากรันเมธอดการเปรียบเทียบ

Aspose.Words ช่วยให้คุณสามารถระบุความแตกต่างของเอกสารโดยใช้วิธี [Compare](https://reference.aspose.com/words/net/aspose.words/document/compare/#compare/) ซึ่งคล้ายกับคุณลักษณะการเปรียบเทียบเอกสาร Microsoft Word ช่วยให้ตรวจสอบเอกสารหรือเวอร์ชันเอกสารเพื่อค้นหาความแตกต่างและการเปลี่ยนแปลง รวมถึงการปรับเปลี่ยนการจัดรูปแบบ เช่น การเปลี่ยนแบบอักษร การเปลี่ยนระยะห่าง การเพิ่มคำและย่อหน้า

จากผลการเปรียบเทียบสามารถกำหนดเอกสารว่าเท่ากันหรือไม่เท่ากันได้ เอกสารคำว่า "เท่าเทียมกัน" หมายความว่าวิธีการเปรียบเทียบไม่สามารถแสดงการเปลี่ยนแปลงเป็นการแก้ไขได้ ซึ่งหมายความว่าทั้งข้อความในเอกสารและการจัดรูปแบบข้อความจะเหมือนกัน แต่อาจมีความแตกต่างอื่นๆ ระหว่างเอกสาร ตัวอย่างเช่น Microsoft Word รองรับเฉพาะการแก้ไขรูปแบบสำหรับสไตล์ และคุณไม่สามารถแสดงถึงการแทรก/การลบสไตล์ได้ ดังนั้นเอกสารจึงสามารถมีชุดรูปแบบที่แตกต่างกันได้ และวิธีการ **Compare** ยังคงไม่มีการแก้ไข

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการตรวจสอบว่าเอกสารสองฉบับเท่ากันหรือไม่:

{{< gist "aspose-com-gists" "0b968ac8900f80c11e109dffb105f3da" "Examples-CSharp-Programming-Documents-Document-CompareDocument-CompareForEqual.cs" >}}

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้วิธี `Compare` กับเอกสารสองฉบับ:

{{< gist "aspose-words-gists" "eacc4fc7407a98d683f3084bb86d58f7" "Examples-CSharp-Programming-Documents-Document-CompareDocument-ApplyCompareTwoDocuments.cs" >}}

## ระบุตัวเลือกการเปรียบเทียบขั้นสูง {#specify-advanced-comparing-properties}

มีคุณสมบัติต่างๆ มากมายของคลาส [CompareOptions](https://reference.aspose.com/words/net/aspose.words.comparing/compareoptions/) ซึ่งคุณสามารถใช้เมื่อต้องการเปรียบเทียบเอกสาร

ตัวอย่างเช่น Aspose.Words ช่วยให้คุณละเว้นการเปลี่ยนแปลงที่เกิดขึ้นระหว่างการดำเนินการเปรียบเทียบสำหรับออบเจ็กต์บางประเภทภายในเอกสารต้นฉบับ คุณสามารถเลือกคุณสมบัติที่เหมาะสมสำหรับประเภทออบเจ็กต์ เช่น [IgnoreHeadersAndFooters](https://reference.aspose.com/words/net/aspose.words.comparing/compareoptions/ignoreheadersandfooters/), [IgnoreFormatting](https://reference.aspose.com/words/net/aspose.words.comparing/compareoptions/ignoreformatting/), [IgnoreComments](https://reference.aspose.com/words/net/aspose.words.comparing/compareoptions/ignorecomments/) และอื่นๆ ได้โดยตั้งค่าเป็น "true"

นอกจากนี้ Aspose.Words ยังมีคุณสมบัติ [Granularity](https://reference.aspose.com/words/net/aspose.words.comparing/compareoptions/granularity/) ที่คุณสามารถระบุได้ว่าจะติดตามการเปลี่ยนแปลงตามอักขระหรือตามคำ

คุณสมบัติทั่วไปอีกประการหนึ่งคือตัวเลือกที่เอกสารจะแสดงการเปลี่ยนแปลงการเปรียบเทียบ ตัวอย่างเช่น "กล่องโต้ตอบเปรียบเทียบเอกสาร" ใน Microsoft Word มีตัวเลือก "แสดงการเปลี่ยนแปลงใน" ซึ่งจะส่งผลต่อผลลัพธ์การเปรียบเทียบด้วย Aspose.Words จัดเตรียมคุณสมบัติ [Target](https://reference.aspose.com/words/net/aspose.words.comparing/compareoptions/target/) ที่ตอบสนองวัตถุประสงค์นี้

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการตั้งค่าคุณสมบัติการเปรียบเทียบขั้นสูง:

{{< gist "aspose-words-gists" "eacc4fc7407a98d683f3084bb86d58f7" "Examples-CSharp-Programming-Documents-Document-CompareDocument-SetAdvancedComparingProperties.cs" >}}
