Ya discutimos la comparación de dos documentos de Word, incluso si estaban protegidos con contraseña. ¿Qué pasa si hay más de dos archivos para comparar? En este artículo, veremos cómo comparar varios documentos de Word en Java. Además, aprenderemos cómo aceptar o rechazar cada uno de los cambios identificados para obtener el resultado deseado.

Compare varios documentos de Word para encontrar diferencias en Java

La reciente serie corta de artículos ya cubrió la forma Java de cómo:

Al final de este artículo, también tendrá una buena comprensión de cómo:

Si su entorno de desarrollo aún no está listo para realizar la comparación, preparémoslo rápidamente.

Biblioteca Java para comparar dos o más documentos de Word: configuración

Espero que ya esté familiarizado con la API de Java de comparación de documentos. Usaré el mismo GroupDocs.Comparison para seguir adelante. Puede descargar o verificar rápidamente el entorno de desarrollo de sus aplicaciones basadas en Maven utilizando las siguientes configuraciones:

<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>

Ahora pasemos al objetivo y comencemos comparando varios archivos de Word.

Compara más de dos archivos de Word en Java

Comparar varios archivos no es tan diferente en comparación con comparar solo dos archivos. Simplemente siga agregando más archivos al Comparador y, finalmente, presione Comparar como lo hace cuando compara dos archivos. Los siguientes son los pasos para comparar más de dos documentos de Word en Java para identificar los cambios y resaltar las diferencias encontradas.

  • Cargue el primer archivo DOC/DOCX utilizando la clase Comparador.
  • Agregue el segundo archivo a Comparer usando el método add().
  • Continúe agregando más documentos al Comparador usando los mismos métodos add() o similares.
  • Llame al método de comparación para realizar la comparación y obtener el resumen de los cambios identificados.

El siguiente ejemplo muestra cómo comparar varios archivos de Word en Java y obtener los cambios en el documento resultante.

/*
 * Comparar varios documentos de 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");
}

Acepte o rechace los cambios identificados dentro de los archivos de Word usando Java

Bastante seguro de que está familiarizado con la función de control de cambios de Microsoft Word. De manera similar, puede aceptar o rechazar mediante programación cada uno de los cambios identificados para el documento de salida final. Los siguientes pasos muestran cómo puede comparar y luego aceptar o rechazar los cambios identificados dentro de los archivos DOC/DOCX de los documentos de Word.

  • Cargue el documento DOC/DOCX de origen utilizando la clase Comparador.
  • Agregue el segundo documento de Word al Comparador usando el método add().
  • Compare los archivos cargados usando el método compare().
  • Obtenga la colección de diferencias identificadas utilizando el método getChanges().
  • Ahora recorra los cambios, analice y luego puede establecer la Acción de comparación de cada cambio en consecuencia.
    • Establézcalo como Aceptar para estar de acuerdo con el cambio.
    • Establézcalo como Rechazar para denegar el cambio.
  • Llame al método applyChanges() para obtener el documento modificado con los cambios aceptados.

El siguiente fragmento de código Java compara dos documentos DOCX y luego muestra cómo aceptar y rechazar los cambios identificados.

/*
 * Comparar documentos de Word: aceptar o rechazar cambios en 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));
}

Obtenga una licencia de API gratuita

Puede obtener una licencia temporal gratuita para usar la API sin las limitaciones de evaluación para comparar varios documentos de Word.

Cree su propia aplicación de comparación

Aquí hay algunos enlaces importantes que lo ayudarán a crear su propia aplicación de comparación de documentos.

Características | Documentation | API Reference | Running Examples – Source Code | Support | Release Notes

Ver también