Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah saya boleh memisahkan nilai lajur CSV dengan cekap ke dalam tatasusunan yang berbeza menggunakan C#?

Bagaimanakah saya boleh memisahkan nilai lajur CSV dengan cekap ke dalam tatasusunan yang berbeza menggunakan C#?

Susan Sarandon
Susan Sarandonasal
2025-01-26 07:01:08482semak imbas

penggunaan C#untuk memisahkan nilai lajur CSV ke dalam array yang berbeza

Artikel ini memperkenalkan cara menggunakan C#untuk memisahkan nilai lajur dengan cekap dalam fail CSV ke dalam array yang berbeza. Ini adalah tugas biasa dalam pemprosesan data. Kami akan menggunakan fungsi kelas StreamReader dan Split() untuk mencapai matlamat ini.

How can I efficiently separate CSV column values into distinct arrays using C#?

Penyimpanan nilai fail CSV ke dalam array berasingan

Membaca fail CSV dan memisahkan lajurnya ke dalam tatasusunan yang berbeza adalah tugas operasi data biasa. Berikut adalah penyelesaian yang menggunakan C#untuk melaksanakan operasi ini.

Fungsi

dan

boleh membaca fail CSV, dan setiap baris dibahagikan kepada lajur yang berlainan mengikut partition segmental. Seterusnya, kita perlu membuat dua array berasingan untuk menyimpan nilai setiap lajur.

StreamReader Berikut adalah contoh serpihan kod: Split()

Kod Keterangan:

<code class="language-csharp">using System.IO;

static void Main(string[] args)
{
    using (var reader = new StreamReader(@"C:\test.csv"))
    {
        List<string> listA = new List<string>();
        List<string> listB = new List<string>();
        while (!reader.EndOfStream)
        {
            var line = reader.ReadLine();
            var values = line.Split(';');

            listA.Add(values[0]);
            listB.Add(values[1]);
        }
    }
}</code>

Objek memulakan dan membuka fail CSV dengan laluan yang ditentukan.

    Buat dua koleksi,
  • dan StreamReader, dan simpan nilai lajur pertama dan kedua.
  • Setiap baris fail lelaran bulat sehingga akhir fail dibaca. List<string> listA Untuk setiap baris, ia menggunakan segmen sebagai nilai segmentasi separatis untuk menghasilkan array nilai. listB
  • Nilai pertama ditambah kepada
  • , dan nilai kedua ditambah kepada while.
  • selepas kitaran selesai,
  • dan listA akan memasukkan nilai dalam fail CSV, masing -masing. Kemudian anda boleh menggunakannya untuk pemprosesan data selanjutnya atau paparan pada permintaan. listB
  • Kaedah ini mudah dan cekap, sesuai untuk kebanyakan senario pemprosesan fail CSV. Sudah tentu, untuk kes yang lebih rumit, seperti fail CSV yang mengandungi petikan atau watak khas lain, kaedah analisis yang lebih mantap mungkin diperlukan.

Atas ialah kandungan terperinci Bagaimanakah saya boleh memisahkan nilai lajur CSV dengan cekap ke dalam tatasusunan yang berbeza menggunakan C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn