เราได้กล่าวถึงการเปรียบเทียบเอกสาร Word สองฉบับแล้วแม้ว่าจะมีการป้องกันด้วยรหัสผ่านก็ตาม จะเกิดอะไรขึ้นถ้ามีมากกว่าสองไฟล์สำหรับการเปรียบเทียบ ในบทความนี้ เราจะดูวิธีการเปรียบเทียบเอกสาร Word หลายชุดใน Java นอกจากนี้ เราจะเรียนรู้วิธียอมรับหรือปฏิเสธการเปลี่ยนแปลงที่ระบุแต่ละรายการเพื่อให้ได้ผลลัพธ์ที่ต้องการ
บทความสั้นชุดล่าสุดได้ครอบคลุมวิธีการของ Java แล้ว:
ในตอนท้ายของบทความนี้ คุณยังจะเข้าใจวิธีการ:
- การเปรียบเทียบไฟล์ Word มากกว่าสองไฟล์ใน Java
- ยอมรับหรือปฏิเสธการเปลี่ยนแปลงที่ระบุภายในไฟล์ Word ใน Java
หากสภาพแวดล้อมการพัฒนาของคุณยังไม่พร้อมที่จะทำการเปรียบเทียบ มาเตรียมกันอย่างรวดเร็ว
Java Library เพื่อเปรียบเทียบเอกสาร Word สองชุดขึ้นไป – ตั้งค่า
ฉันหวังว่าคุณจะคุ้นเคยกับ การเปรียบเทียบเอกสาร Java API ในตอนนี้ ฉันจะใช้ GroupDocs.Comparison เดียวกันเพื่อดำเนินการต่อ คุณสามารถ ดาวน์โหลด หรือตรวจสอบสภาพแวดล้อมการพัฒนาของแอปพลิเคชันที่ใช้ maven ได้อย่างรวดเร็วโดยใช้การกำหนดค่าต่อไปนี้:
<repository>
<id>GroupDocsJavaAPI</id>
<name>GroupDocs Java API</name>
<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-comparison</artifactId>
<version>22.3</version>
</dependency>
ตอนนี้ขอข้ามไปที่วัตถุประสงค์และเริ่มต้นด้วยการเปรียบเทียบไฟล์ Word หลายไฟล์
เปรียบเทียบไฟล์ Word มากกว่าสองไฟล์ใน Java
การเปรียบเทียบไฟล์หลายไฟล์นั้นไม่แตกต่างกันมากนักเมื่อเทียบกับการเปรียบเทียบไฟล์เพียงสองไฟล์ เพียงแค่เพิ่มไฟล์ลงในตัวเปรียบเทียบและสุดท้าย ให้กดเปรียบเทียบเหมือนที่คุณทำเมื่อเปรียบเทียบสองไฟล์ ต่อไปนี้เป็นขั้นตอนในการเปรียบเทียบเอกสาร Word มากกว่าสองรายการใน Java เพื่อระบุการเปลี่ยนแปลงและเน้นความแตกต่างที่พบ
- โหลดไฟล์ DOC/DOCX ไฟล์แรกโดยใช้คลาส Comparer
- เพิ่มไฟล์ที่สองไปยังตัวเปรียบเทียบโดยใช้เมธอด add()
- ให้เพิ่มเอกสารเพิ่มเติมไปยังตัวเปรียบเทียบโดยใช้วิธีการเพิ่ม() เดียวกัน/คล้ายกัน
- เรียกใช้วิธีการเปรียบเทียบเพื่อทำการเปรียบเทียบและรับข้อมูลสรุปของการเปลี่ยนแปลงที่ระบุ
ตัวอย่างต่อไปนี้แสดงวิธีการเปรียบเทียบไฟล์ Word หลายไฟล์ใน Java และรับการเปลี่ยนแปลงในเอกสารผลลัพธ์
/*
* เปรียบเทียบเอกสาร Word หลายชุด
*/
try (Comparer comparer = new Comparer("path/document-1.docx")) {
comparer.add("path/document-2.docx");
comparer.add("path/document-3.docx");
final Path resultPath = comparer.compare("path/compared-result.docx");
}
ยอมรับหรือปฏิเสธการเปลี่ยนแปลงที่ระบุภายในไฟล์ Word โดยใช้ Java
ค่อนข้างแน่ใจว่าคุณคุ้นเคยกับคุณสมบัติการติดตามการเปลี่ยนแปลงของ Microsoft Word ในทำนองเดียวกัน คุณสามารถยอมรับหรือปฏิเสธการเปลี่ยนแปลงที่ระบุแต่ละรายการสำหรับเอกสารเอาต์พุตขั้นสุดท้ายโดยทางโปรแกรม ขั้นตอนต่อไปนี้แสดงวิธีการเปรียบเทียบและยอมรับหรือปฏิเสธการเปลี่ยนแปลงที่ระบุภายในไฟล์ DOC/DOCX ของเอกสาร Word
- โหลดเอกสาร DOC/DOCX ต้นทางโดยใช้คลาส Comparer
- เพิ่มเอกสาร Word ที่สองไปยังตัวเปรียบเทียบโดยใช้เมธอด add()
- เปรียบเทียบไฟล์ที่โหลดโดยใช้วิธีการเปรียบเทียบ()
- ดึงข้อมูลชุดความแตกต่างที่ระบุโดยใช้เมธอด getChanges()
- ตอนนี้สำรวจการเปลี่ยนแปลง วิเคราะห์ จากนั้นคุณสามารถตั้งค่า ComparisonAction ของการเปลี่ยนแปลงแต่ละรายการตามนั้น
- ตั้งเป็นยอมรับเพื่อยอมรับการเปลี่ยนแปลง
- ตั้งเป็นปฏิเสธเพื่อปฏิเสธการเปลี่ยนแปลง
- เรียกใช้เมธอด applyChanges() เพื่อรับเอกสารที่แก้ไขพร้อมการเปลี่ยนแปลงที่ยอมรับ
ข้อมูลโค้ด Java ต่อไปนี้เปรียบเทียบเอกสาร DOCX สองรายการ จากนั้นแสดงวิธียอมรับและปฏิเสธการเปลี่ยนแปลงที่ระบุ
/*
* เปรียบเทียบเอกสาร Word - ยอมรับหรือปฏิเสธการเปลี่ยนแปลงใน Java
*/
try (Comparer comparer = new Comparer("path/document-1.docx")) {
comparer.add("path/document-2.docx");
final Path resultPath = comparer.compare("path/compared-result.docx");
ChangeInfo[] changes = comparer.getChanges();
changes[0].setComparisonAction(ComparisonAction.REJECT);
changes[1].setComparisonAction(ComparisonAction.ACCEPT);
comparer.applyChanges(resultPath, new ApplyChangeOptions(changes));
}
รับใบอนุญาต API ฟรี
คุณสามารถ รับใบอนุญาตชั่วคราวได้ฟรี เพื่อใช้ API โดยไม่มีข้อจำกัดในการประเมินเพื่อเปรียบเทียบเอกสาร Word หลายฉบับ
สร้างแอปพลิเคชันเปรียบเทียบของคุณเอง
ต่อไปนี้คือลิงก์สำคัญบางส่วนที่จะช่วยคุณสร้างแอปพลิเคชันเปรียบเทียบเอกสารของคุณเอง
ฟีเจอร์ | เอกสารประกอบ | การอ้างอิง API | ตัวอย่างการทำงาน – ซอร์สโค้ด | สนับสนุน | บันทึกประจำรุ่น