Bandingkan File CSV menggunakan C# .NET

Kami baru-baru ini membahas cara dasar bagaimana membandingkan dua file CSV dalam aplikasi .NET kami. Hari ini, dalam artikel ini, kita akan belajar lebih jauh untuk membandingkan lebih dari dua CSV menggunakan C#. Selain itu, kami akan membahas cara membandingkan file CSV yang dilindungi kata sandi. Last but not least, cara menerima dan menolak perubahan yang ditemukan menggunakan C# dalam aplikasi .NET.

Topik-topik berikut dibahas di bawah ini:

.NET API untuk Membandingkan File CSV

GroupDocs.Comparison memiliki .NET API yang memungkinkan membandingkan file CSV dengan berbagai cara. Kami akan menggunakannya untuk membandingkan file CSV dalam aplikasi .NET. Ini lebih lanjut mendukung perbandingan lebih dari dua file CSV, file yang dilindungi kata sandi, menerima dan menolak perubahan yang ditemukan.

Anda dapat mengunduh penginstal DLL atau MSI dari bagian unduhan atau menginstal API dengan menambahkan paketnya ke aplikasi .NET Anda melalui NuGet.

PM> Install-Package GroupDocs.Comparison

Contoh menjalankan fitur-fiturnya juga tersedia di GitHub. Kunjungi dokumentasi dan Referensi API untuk panduan.

Bandingkan File CSV menggunakan C#

Perbandingan dasar dari dua file CSV tadi sudah kita bahas. Di sana, kami melihat ke dalam file perbandingan kode sumber C#, contoh file input untuk perbandingan, dan file output perbandingan. Anda dapat mengunjungi artikel itu untuk perbandingan dasar.

Bandingkan Lebih dari Dua File CSV menggunakan C#

Jika Anda memiliki lebih dari dua file CSV untuk dibandingkan, tidak ada yang perlu dikhawatirkan. Ini sesederhana membandingkan dua file. Anda hanya perlu menambahkan file ketiga ke Pembanding.

Berikut adalah langkah-langkah untuk membandingkan lebih dari dua file CSV menggunakan C#.

  • Buat instance kelas Comparer dengan file CSV pertama yang akan dibandingkan.
  • Tambahkan file CSV kedua menggunakan metode Tambah yang sesuai.
  • Demikian pula, tambahkan file CSV lainnya menggunakan metode Add.
  • Terakhir, aktifkan metode Bandingkan untuk mendapatkan hasil perbandingan dari semua file CSV yang ditambahkan.

Kode sumber C# berikut membandingkan beberapa file CSV dan menghasilkan hasil perbandingan dalam file CSV dan HTML terpisah. File keluaran HTML menyoroti perubahan dalam warna yang berbeda.

// Bandingkan Banyak (lebih dari 2) file CSV menggunakan C#

using (Comparer comparer = new Comparer("path/comma-separated-file-1.csv"))
{
    // Menambahkan beberapa file CSV untuk dibandingkan
    comparer.Add("path/comma-separated-file-2.csv");
    comparer.Add("path/comma-separated-file-3.csv");
    // ...
    // ...
    comparer.Compare("path/comparison-result.csv");
}

Bandingkan File CSV yang Dilindungi Kata Sandi menggunakan C#

Jika file CSV Anda dilindungi kata sandi, Anda hanya perlu memberikan kata sandi saat memuat file ini. Tidak ada perbedaan dalam prosedur selanjutnya untuk membandingkan beberapa file CSV yang dilindungi kata sandi.

Berikut adalah langkah-langkah untuk membandingkan file CSV yang dilindungi kata sandi menggunakan C#.

  • Persiapkan opsi pemuatan menggunakan kelas LoadOptions dan dengan menyetel kata sandi untuk membuka file CSV.
  • Muat file CSV pertama untuk dibandingkan sambil membuat instance kelas Comparer.
  • Tambahkan file CSV kedua menggunakan metode Tambah yang sesuai.
  • Demikian pula, tambahkan sebanyak mungkin file CSV lainnya menggunakan salah satu metode Tambah.
  • Terakhir, panggil metode Bandingkan untuk mendapatkan perbandingan semua file CSV yang ditambahkan.

Kode sumber C# berikut membandingkan beberapa file CSV yang dilindungi kata sandi dan menghasilkan hasil perbandingan dalam file CSV dan HTML terpisah.

// Bandingkan File CSV (Comma Separated Values) yang Dilindungi Kata Sandi menggunakan 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");
}

Terima atau Tolak Perubahan File CSV yang Diidentifikasi menggunakan C#

Sama seperti fitur Microsoft Word, Anda dapat mengimplementasikan opsi lacak perubahan untuk file CSV dalam aplikasi .NET Anda. Setelah perbandingan file, Anda dapat menerima atau menolak setiap perubahan yang teridentifikasi. Berikut adalah langkah-langkah untuk membandingkan file CSV dan kemudian menerima atau menolak perubahan yang teridentifikasi.

  • Muat sumber dan tambahkan file CSV target menggunakan kelas Comparer.
  • Lakukan perbandingan file yang dimuat menggunakan metode Bandingkan.
  • Ambil perubahan yang teridentifikasi menggunakan metode GetChanges.
  • Sekarang Anda dapat melintasi perubahan dan mengatur ComparisonAction dari setiap perubahan.
    • Untuk perubahan yang disetujui, Anda dapat menetapkannya sebagai Terima.
    • Untuk perubahan yang tidak disetujui, Anda dapat menetapkannya sebagai Tolak.
  • Terakhir, panggil metode ApplyChanges untuk mendapatkan dokumen yang dihasilkan memiliki perubahan yang diterapkan.

Kode sumber C# berikut membandingkan dua file CSV dan kemudian menerima dan menolak perubahan yang sesuai.

/*
 * Terima atau tolak perubahan yang teridentifikasi dengan membandingkan file CSV menggunakan 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();
    
    // Menolak yang pertama dan Menerima perubahan yang teridentifikasi kedua.
    changes[0].ComparisonAction = ComparisonAction.Reject;
    changes[1].ComparisonAction = ComparisonAction.Accept;
    comparer.ApplyChanges("path/track-changes-result.csv", new ApplyChangeOptions { Changes = changes, SaveOriginalState = true });
}

Dapatkan Lisensi API Gratis

Anda bisa mendapatkan lisensi sementara gratis untuk menggunakan API tanpa batasan evaluasi.

Kesimpulan

Singkatnya, hari ini kita belajar bagaimana membandingkan dua atau lebih file CSV menggunakan C#. Seiring dengan perbandingan file CSV yang dilindungi kata sandi, kami belajar untuk secara terprogram menerima dan menolak perubahan yang teridentifikasi dalam aplikasi .NET.

Ada banyak penyesuaian lain untuk mengontrol hasil perbandingan, seperti menyetel sensitivitas perbandingan, hanya menampilkan halaman ringkasan, mengabaikan celah, dan banyak lagi. Pelajari tentang fitur ini dari dokumentasi.

Anda dapat mulai membangun aplikasi perbandingan Anda sendiri untuk berbagai format dokumen yang didukung. Untuk pertanyaan, hubungi kami melalui forum.

Lihat juga