C#에서 효율적으로 DataTable을 CSV로 변환
이 문서에서는 C# DataTable 개체를 쉼표로 구분된 값(CSV) 파일로 변환하는 강력한 방법을 보여줍니다. 원래 방법에서는 적절한 데이터 분리에 문제가 있었습니다. 이 솔루션은 수정되고 향상된 접근 방식을 제공합니다.
최적화된 코드는 다음과 같습니다.
<code class="language-csharp">StringBuilder sb = new StringBuilder(); IEnumerable<string> columnNames = dt.Columns.Cast<DataColumn>().Select(column => column.ColumnName); sb.AppendLine(string.Join(",", columnNames)); foreach (DataRow row in dt.Rows) { IEnumerable<string> fields = row.ItemArray.Select(field => field?.ToString() ?? ""); //Handle null values sb.AppendLine(string.Join(",", fields)); } File.WriteAllText("test.csv", sb.ToString());</code>
이 코드는 CSV 파일 내에서 데이터를 개별 셀로 올바르게 분리하여 원래 문제를 해결합니다. LINQ의 Select
및 string.Join
메서드를 활용하여 열 머리글과 데이터 행 모두에 대해 쉼표로 구분된 문자열을 효율적으로 만듭니다. File.WriteAllText
을 사용하면 CSV 데이터가 지정된 파일에 기록됩니다. field?.ToString() ?? ""
을 추가하면 잠재적인 null 값을 적절하게 처리합니다.
특수 문자에 대한 따옴표 이스케이프나 메모리 최적화 기술과 같은 추가 개선 사항은 특정 애플리케이션 요구 사항에 따라 통합될 수 있습니다.
위 내용은 C#에서 DataTable을 CSV 파일로 올바르게 변환하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!