Maison >Java >javaDidacticiel >Comparez les gros fichiers CSV #eg38
Voici deux fichiers csv (A et B) de même structure. Les deux utilisent KEY_A, KEY_B et KEY_C comme clé primaire, et les deux ont des enregistrements différents.
Utilisez Java pour comparer les deux fichiers de trois manières et écrivez les résultats respectivement dans de nouveaux fichiers CSV. 1. Recherchez les enregistrements où les clés primaires sont égales et les valeurs des autres champs ne sont pas égales, affichez leurs clés primaires, puis les autres champs de A et les autres champs de B. Vous trouverez ci-dessous le résultat attendu :
Écrivez le code SPL pour effectuer les trois comparaisons. Ci-dessous pour la 1ère comparaison :
La fonction T() analyse un fichier csv ou écrit des données dans un fichier csv ; L'option @c permet d'utiliser le curseur pour récupérer les données d'un fichier qui ne peut pas tenir dans la mémoire. La fonction sortx() trie les données dans un curseur. La fonction joinx() effectue une jointure par fusion. La fonction merge() fusionne les enregistrements ; L'option @d permet de trouver la différence.
Lisez Comment appeler un script SPL en Java pour découvrir comment intégrer SPL dans une application Java.
C'est l'un des problèmes sur StackOverflow. Vous pouvez cliquer dessus pour voir que la solution conventionnelle est assez compliquée, mais l'approche SPL est vraiment simple et efficace.
Adresse open source SPL
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!