Los datos del archivo CSV son básicamente valores separados por comas y es muy difícil leer dichos datos en formato sin procesar. Sin embargo, cuando estos archivos se ven con cualquiera de los editores conocidos como Microsoft Excel, OpenOffice Calc o LibreOffice que admiten el formato CSV, resulta bastante fácil manipular los archivos CSV. Incluso entonces, ¿qué pasa si desea comparar dos archivos CSV grandes por su diferencia en los datos? Hagámoslo programáticamente. Este artículo cubre rápidamente la forma básica de comparar dos archivos CSV en Java.

API de Java para comparar archivos CSV

GroupDocs muestra sus API que permiten comparar dos o más archivos CSV en busca de diferencias dentro de las aplicaciones. Usaré su API de Java, es decir, GroupDocs.Comparison for Java para comparar archivos CSV.

La API también admite la comparación de más de dos archivos CSV, la comparación de archivos CSV protegidos con contraseña, la aceptación y el rechazo de los cambios descubiertos, y mucho más.

Descargar y configurar

Obtenga la biblioteca de comparación CSV de la sección descargas. Para aplicaciones Java basadas en Maven, agregue la siguiente configuración dentro de pom.xml. Más adelante, puede probar los ejemplos de este artículo y muchos más de GitHub. Para obtener más información, también puede visitar la Referencia de la API.

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

Cómo comparar archivos CSV en Java

Directo al tema, hagamos la comparación básica. Es tan simple como cualquier aplicación de comparación de CSV en línea. Simplemente cargue el archivo de comparación y luego presione comparar. Los siguientes son los archivos que se comparan a continuación:

Archivos CSV para comparar

Los siguientes son los pasos para comparar dos archivos CSV en busca de diferencias en Java:

  • Cargue el primer archivo CSV usando la clase Comparer.
  • Agregue el segundo archivo CSV usando el método de agregar respectivo.
  • Compare ambos archivos usando el método de comparación.

El siguiente código Java compara los archivos CSV y proporciona las diferencias en una salida CSV.

// Compare CSV (archivos separados por comas) usando Java

Comparer comparer = new Comparer("path/comma-separated-file-1.csv");
comparer.add("path/comma-separated-file-2.csv");
final Path outputFilePath = comparer.compare("path/comparison-result.csv");

El resultado de salida es el siguiente:

Resultado de la comparación de archivos CSV

Conclusión

En resumen, acabamos de aprender a comparar dos archivos CSV de valores separados por comas dentro de una aplicación Java. En el resumen de la comparación, también obtenemos el recuento de las diferencias encontradas en los archivos comparados. Esta característica le permite encontrar las diferencias entre dos archivos CSV grandes. Del mismo modo, puede crear su propia aplicación Java de comparación de archivos CSV utilizando esta función simple.

Para obtener más detalles y conocer la API, visite su documentación. Para consultas, contáctenos a través del foro.

Ver también