C# CSV 구문 분석에서 쉼표를 효율적으로 처리
쉼표로 구분된 열을 처리할 때 CSV 파일 구문 분석이 복잡해집니다. 이 문서에서는 C#의 Microsoft.VisualBasic.FileIO.TextFieldParser
클래스를 사용하는 강력한 솔루션을 보여줍니다.
TextFieldParser
클래스는 인용된 필드와 인용되지 않은 필드를 모두 지능적으로 처리함으로써 상당한 이점을 제공합니다. 이렇게 하면 열 값 내에 쉼표가 나타나는 경우에도 정확한 데이터 추출이 보장됩니다.
실제 예를 들어 설명하겠습니다.
<code class="language-csharp">using Microsoft.VisualBasic.FileIO; using System.IO; string csvData = "2,1016,7/31/2008 14:22,Geoff Dalgas,6/5/2011 22:21,http://stackoverflow.com,\"Corvallis, OR\",7679,351,81,b437f461b3fd27387c5d8ab47a293d35,34"; using (TextFieldParser parser = new TextFieldParser(new StringReader(csvData))) { parser.HasFieldsEnclosedInQuotes = true; parser.SetDelimiters(","); while (!parser.EndOfData) { string[] fields = parser.ReadFields(); foreach (string field in fields) { Console.WriteLine(field); } } }</code>
코드는 CSV 데이터로 TextFieldParser
을 초기화합니다. 결정적으로 HasFieldsEnclosedInQuotes
는 파서가 인용된 필드를 올바르게 해석할 수 있도록 true
로 설정됩니다. 구분 기호는 쉼표로 설정되어 있습니다.
while
루프는 각 줄을 반복하고 ReadFields()
는 줄을 필드 배열로 분할합니다. 그런 다음 코드는 각 필드를 콘솔에 인쇄합니다. using
문은 적절한 리소스 정리를 보장합니다.
이 방법은 따옴표 안에 쉼표가 포함된 열 값을 정확하게 보존하여 CSV 데이터를 구문 분석하는 안정적인 방법을 제공합니다.
위 내용은 C#에서 Comma ancelimited 열로 CSV 파일을 구문 분석하려면 어떻게해야합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!