Мы уже обсуждали сравнение двух документов Word, даже если они были защищены паролем. Что делать, если есть более двух файлов для сравнения? В этой статье мы рассмотрим, как сравнить несколько документов Word в Java. Далее мы узнаем, как принять или отклонить каждое из выявленных изменений, чтобы получить желаемый результат.
Недавняя короткая серия статей уже рассказывала о том, как с помощью Java:
К концу этой статьи вы также будете хорошо понимать, как:
- Сравнение более двух файлов Word в Java
- Принять или отклонить выявленные изменения в файлах Word на Java
Если ваша среда разработки еще не готова к выполнению сравнения, давайте быстро ее подготовим.
Библиотека Java для сравнения двух или более документов 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
Сравнение нескольких файлов ничем не отличается от сравнения только двух файлов. Просто продолжайте добавлять файлы в 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 для каждого изменения.
- Установите его как «Принять», чтобы согласиться с изменением.
- Установите его как Отклонить, чтобы отклонить изменение.
- Вызовите метод 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.
Создайте собственное приложение для сравнения
Вот несколько важных ссылок, которые помогут вам в создании собственного приложения для сравнения документов.
Функции | Documentation | API Reference | Running Examples – Source Code | Support | Release Notes