Rumah >pembangunan bahagian belakang >C++ >Bagaimana cara menghuraikan data CSV dengan koma di dalam bidang menggunakan C#?

Bagaimana cara menghuraikan data CSV dengan koma di dalam bidang menggunakan C#?

Patricia Arquette
Patricia Arquetteasal
2025-01-26 16:51:10655semak imbas

How to Parse CSV Data with Commas Inside Fields Using C#?

C# menghuraikan data CSV yang mengandungi koma dengan cekap

Semasa proses penghuraian fail CSV, koma sering ditemui di dalam medan, yang boleh membawa kepada ralat penghuraian. Untuk mengendalikan situasi ini dengan cekap, anda boleh menggunakan kelas Microsoft.VisualBasic.FileIO.TextFieldParser.

Coretan kod berikut menunjukkan cara menggunakan kelas TextFieldParser untuk menghuraikan rentetan CSV Walaupun medan mengandungi koma, ia boleh dihuraikan dengan betul selagi ia disertakan dalam petikan berganda. Kod membaca data, membahagikannya kepada medan individu dan mencetaknya ke konsol.

<code class="language-csharp">using Microsoft.VisualBasic.FileIO;

string csv = "2,1016,7/31/2008 14:22,Geoff Dalgas,6/5/2011 22:21,http://stackoverflow.com,\"Corvallis, OR\",7679,351,81,b437f461b3fd27387c5d8ab47a293d35,34";

TextFieldParser parser = new TextFieldParser(new StringReader(csv));
parser.HasFieldsEnclosedInQuotes = true;
parser.SetDelimiters(",");

string[] fields;

while (!parser.EndOfData)
{
    fields = parser.ReadFields();
    foreach (string field in fields)
    {
        Console.WriteLine(field);
    }
} 

parser.Close();</code>

Hasil analisis adalah seperti berikut:

<code>2
1016
7/31/2008 14:22
Geoff Dalgas
6/5/2011 22:21
http://stackoverflow.com
Corvallis, OR
7679
351
81
b437f461b3fd27387c5d8ab47a293d35
34</code>

Dengan menggunakan kelas TextFieldParser, anda boleh menghuraikan data CSV dengan berkesan, mengendalikan koma dalam medan dengan betul dan memastikan ketepatan pemprosesan dan analisis data.

Atas ialah kandungan terperinci Bagaimana cara menghuraikan data CSV dengan koma di dalam bidang 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