כבר דנו בהשוואה של שני מסמכי Word גם אם הם היו מוגנים בסיסמה. מה אם יש יותר משני קבצים להשוואה? במאמר זה, נבחן כיצד להשוות מסמכי Word מרובים ב-Java. בהמשך, נלמד כיצד לקבל או לדחות כל אחד מהשינויים שזוהו כדי לקבל את הפלט הרצוי.

השווה מסמכי Word מרובים כדי למצוא הבדלים ב-Java

סדרת המאמרים הקצרה האחרונה כבר סיקרה את דרך Java כיצד:

בסוף מאמר זה, תהיה לך גם הבנה טובה כיצד:

אם סביבת הפיתוח שלכם עדיין לא מוכנה לבצע את ההשוואה, בואו נכין אותה במהירות.

ספריית Java להשוואה בין שני מסמכי Word או יותר - הגדרה

אני מקווה שאתה כבר מכיר את השוואת מסמכים Java API. אני אשתמש באותו GroupDocs.Comparison כדי להתקדם. אתה יכול להוריד או לבדוק במהירות את סביבת הפיתוח של היישומים המבוססים על מייבן באמצעות התצורות הבאות:

<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

השוואת קבצים מרובים אינה שונה כל כך בהשוואה להשוואה של שני קבצים בלבד. פשוט המשיכו להוסיף עוד קבצים ל-Comparer ולבסוף, הקישו על ההשוואה כפי שאתם עושים בעת השוואת שני קבצים. להלן השלבים להשוואה של יותר משני מסמכי Word ב-Java כדי לזהות את השינויים ולהדגיש את ההבדלים שנמצאו.

  • טען את קובץ ה-DOC/DOCX הראשון באמצעות המחלקה Comparer.
  • הוסף את הקובץ השני ל-Comparer באמצעות שיטת add().
  • המשך להוסיף מסמכים נוספים ל-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 השני ל-Comparer באמצעות שיטת add().
  • השווה את הקבצים הטעונים באמצעות השיטה compare().
  • אחזר את אוסף ההבדלים שזוהו באמצעות שיטת getChanges()‎.
  • כעת חצו את השינויים, נתחו, ואז תוכלו להגדיר את ComparisonAction של כל שינוי בהתאם.
    • הגדר אותו כקבל כדי להסכים עם השינוי.
    • הגדר אותו כדחייה כדי לדחות את השינוי.
  • קרא למתודה appChanges() כדי לקבל את המסמך שהשתנה עם שינויים מחובקים.

קטע הקוד הבא של 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 Reference | דוגמאות ריצה – קוד מקור | תמיכה | הערות פרסום

ראה גם