Comparez les fichiers CSV à l'aide de C # .NET

Nous avons récemment discuté de la méthode de base pour comparer deux fichiers CSV dans nos applications .NET. Aujourd’hui, dans cet article, nous allons apprendre à comparer plus de deux CSV en utilisant C#. De plus, nous verrons comment comparer les fichiers CSV protégés par mot de passe. Enfin et surtout, comment accepter et rejeter les modifications trouvées à l’aide de C # dans l’application .NET.

Les sujets suivants sont traités ci-dessous :

API .NET pour comparer les fichiers CSV

GroupDocs.Comparison a son API .NET qui permet de comparer des fichiers CSV de différentes manières. Nous l’utiliserons pour comparer les fichiers CSV dans l’application .NET. Il prend également en charge la comparaison de plus de deux fichiers CSV, fichiers protégés par mot de passe, acceptant et rejetant les modifications découvertes.

Vous pouvez télécharger les DLL ou le programme d’installation MSI à partir de la section des téléchargements ou installer l’API en ajoutant son package à votre application .NET via NuGet.

PM> Install-Package GroupDocs.Comparison

Des exemples d’exécution de ses fonctionnalités sont également disponibles sur GitHub. Consultez sa documentation et API Reference pour obtenir des conseils.

Comparer les fichiers CSV à l’aide de C#

Nous avons déjà discuté de la comparaison de base de deux fichiers CSV plus tôt. Là, nous avons examiné le code source C # de comparaison des fichiers, des exemples de fichiers d’entrée à comparer et le fichier de sortie de comparaison. Vous pouvez visiter cet article pour une comparaison de base.

Comparez plus de deux fichiers CSV à l’aide de C

Si vous avez plus de deux fichiers CSV à comparer, ne vous inquiétez pas. C’est aussi simple que de comparer deux fichiers. Il vous suffit d’ajouter le troisième fichier au comparateur.

Voici les étapes pour comparer plus de deux fichiers CSV à l’aide de C#.

  • Instanciez la classe Comparer avec le premier fichier CSV à comparer.
  • Ajoutez le deuxième fichier CSV à l’aide de la méthode Add appropriée.
  • De même, ajoutez autant d’autres fichiers CSV à l’aide de la méthode Add.
  • Enfin, appelez la méthode Compare pour obtenir les résultats de comparaison de tous les fichiers CSV ajoutés.

Le code source C# suivant compare plusieurs fichiers CSV et génère les résultats de la comparaison dans des fichiers CSV et HTML distincts. Le fichier de sortie HTML met en évidence les modifications dans différentes couleurs.

// Comparez plusieurs (plus de 2) fichiers CSV à l'aide de C #

using (Comparer comparer = new Comparer("path/comma-separated-file-1.csv"))
{
    // Ajout de plusieurs fichiers CSV à comparer
    comparer.Add("path/comma-separated-file-2.csv");
    comparer.Add("path/comma-separated-file-3.csv");
    // ...
    // ...
    comparer.Compare("path/comparison-result.csv");
}

Comparez les fichiers CSV protégés par mot de passe à l’aide de C

Si vos fichiers CSV sont protégés par un mot de passe, il vous suffit de fournir le mot de passe lors du chargement de ces fichiers. Il n’y a aucune différence dans le reste de la procédure pour comparer plusieurs fichiers CSV protégés par mot de passe.

Voici les étapes pour comparer des fichiers CSV protégés par mot de passe à l’aide de C#.

  • Préparez les options de chargement à l’aide de la classe LoadOptions et en définissant le mot de passe pour ouvrir le fichier CSV.
  • Chargez le premier fichier CSV à comparer lors de l’instanciation de la classe Comparer.
  • Ajoutez le deuxième fichier CSV à l’aide de la méthode Add appropriée.
  • De même, ajoutez autant d’autres fichiers CSV à l’aide de l’une des méthodes Add.
  • Enfin, appelez la méthode Compare pour obtenir la comparaison de tous les fichiers CSV ajoutés.

Le code source C# suivant compare plusieurs fichiers CSV protégés par mot de passe et génère les résultats de la comparaison dans des fichiers CSV et HTML distincts.

// Comparez les fichiers CSV (valeurs séparées par des virgules) protégés par mot de passe à l'aide de C #

using (Comparer comparer = new Comparer("path/comma-separated-file-1.csv", new LoadOptions(){ Password = "file1-password" }))
{
    comparer.Add("path/comma-separated-file-2.csv", new LoadOptions(){ Password = "file2-password" });
    comparer.Compare("path/comparison-result.csv");
}

Accepter ou rejeter les modifications identifiées des fichiers CSV à l’aide de C#

Tout comme la fonctionnalité de Microsoft Word, vous pouvez implémenter l’option de suivi des modifications pour les fichiers CSV dans vos applications .NET. Après la comparaison des fichiers, vous pouvez accepter ou rejeter chacune des modifications identifiées. Voici les étapes pour comparer les fichiers CSV, puis accepter ou rejeter les modifications identifiées.

  • Chargez la source et ajoutez les fichiers CSV cibles à l’aide de la classe Comparer.
  • Effectuez la comparaison des fichiers chargés à l’aide de la méthode Compare.
  • Récupérez les modifications identifiées à l’aide de la méthode GetChanges.
  • Vous pouvez maintenant parcourir les modifications et définir l’action de comparaison de chaque modification.
    • Pour les modifications convenues, vous pouvez les définir sur Accepter.
    • Pour les modifications non acceptées, vous pouvez les définir sur Rejeter.
  • Enfin, appelez la méthode ApplyChanges pour obtenir le document résultant ayant les modifications appliquées.

Le code source C# suivant compare deux fichiers CSV, puis accepte et rejette les modifications en conséquence.

/*
 * Acceptez ou rejetez les modifications identifiées en comparant les fichiers CSV à l'aide de C#
 */
using (Comparer comparer = new Comparer("path/comma-separated-file-1.csv"))
{
    comparer.Add("path/comma-separated-file-2.csv");
    comparer.Compare();
    ChangeInfo[] changes = comparer.GetChanges();
    
    // Rejeter le premier et Accepter le second changement identifié.
    changes[0].ComparisonAction = ComparisonAction.Reject;
    changes[1].ComparisonAction = ComparisonAction.Accept;
    comparer.ApplyChanges("path/track-changes-result.csv", new ApplyChangeOptions { Changes = changes, SaveOriginalState = true });
}

Obtenez une licence API gratuite

Vous pouvez obtenir une licence temporaire gratuite afin d’utiliser l’API sans les limitations d’évaluation.

Conclusion

Pour résumer, nous avons appris aujourd’hui comment comparer deux ou plusieurs fichiers CSV à l’aide de C#. Parallèlement à la comparaison des fichiers CSV protégés par mot de passe, nous avons appris à accepter et à rejeter par programmation les modifications identifiées dans les applications .NET.

Il existe de nombreuses autres personnalisations pour contrôler les résultats de la comparaison, comme définir la sensibilité de la comparaison, afficher uniquement la page de résumé, ignorer les lacunes, et bien plus encore. Découvrez ces fonctionnalités dans la documentation.

Vous pouvez commencer à créer vos propres applications de comparaison pour divers formats de documents pris en charge. Pour toute question, contactez-nous via le forum.

Voir également