CSV 데이터를 .NET DataTable로 가져오기: 실용 가이드
CSV 데이터를 효율적으로 처리하는 것은 많은 .NET 애플리케이션에 매우 중요합니다. 이 문서에서는 테이블 형식 데이터 관리를 위한 강력한 ADO.NET 구조인 .NET DataTable로 CSV 파일을 원활하게 가져오는 방법을 보여줍니다.
OleDb 공급자 활용
표준 ADO.NET에는 직접 CSV 가져오기 기능이 없지만 OleDb 공급자는 강력한 솔루션을 제공합니다. 그러나 일반적인 과제는 숫자 데이터를 올바르게 해석하는 것입니다. schema.ini
파일(아래 설명)을 사용하여 이 문제를 해결하겠습니다.
재사용 가능한 C# 메서드
다음 C# 함수는 CSV 파일을 읽고 DataTable을 채워 헤더 행을 적절하게 처리합니다.
<code class="language-csharp">public static DataTable LoadCsvToDataTable(string filePath, bool hasHeaderRow) { string directory = Path.GetDirectoryName(filePath); string filename = Path.GetFileName(filePath); string header = hasHeaderRow ? "Yes" : "No"; string sqlQuery = $"SELECT * FROM [{filename}]"; using (OleDbConnection connection = new OleDbConnection( $"Provider=Microsoft.Jet.OLEDB.4.0;Data Source={directory};Extended Properties=\"Text;HDR={header}\"")) using (OleDbCommand command = new OleDbCommand(sqlQuery, connection)) using (OleDbDataAdapter adapter = new OleDbDataAdapter(command)) { DataTable dataTable = new DataTable(); dataTable.Locale = CultureInfo.CurrentCulture; // Ensures correct data type handling adapter.Fill(dataTable); return dataTable; } }</code>
이 방법은 현재 문화권을 사용하여 정확한 데이터 유형 해석을 보장하고 숫자 값과 관련된 일반적인 문제를 방지합니다. 이 접근 방식을 사용하면 수동으로 유형을 변환할 필요가 없습니다.
위 내용은 CSV 데이터를 .NET DataTable에 효율적으로 로드하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!