本指南演示瞭如何使用OLEDB提供商有效地將CSV文件加載到.NET
中。 雖然直截了當,但這種方法需要注意細節,尤其是在處理數字數據時。
System.Data.DataTable
> > OLEDB提供商提供了一種與CSV文件進行交互的簡單機制。但是,一個常見的陷阱涉及將數字值作為文本的誤解。 為了減輕這種情況,我們將使用一個
文件。>
schema.ini
文件為OLEDB提供商提供了重要的配置,從而可以對數據導入過程進行細粒度的控制。 具體來說,它使我們能夠明確定義數據類型,確保正確解釋數字字段。
實現:A C#方法schema.ini
以下C#代碼提供了一種可重複使用的方法,將CSV數據加載到A>:
方法參數和功能:DataTable
<code class="language-csharp">using System.Data; using System.Data.OleDb; using System.Globalization; using System.IO; public static DataTable LoadCsvToDataTable(string filePath, bool hasHeaderRow) { string header = hasHeaderRow ? "Yes" : "No"; string pathOnly = Path.GetDirectoryName(filePath); string fileName = Path.GetFileName(filePath); string connectionString = $@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source={pathOnly};Extended Properties=""Text;HDR={header}"""; string sql = $@"SELECT * FROM [{fileName}]"; using (OleDbConnection connection = new OleDbConnection(connectionString)) using (OleDbCommand command = new OleDbCommand(sql, connection)) using (OleDbDataAdapter adapter = new OleDbDataAdapter(command)) { DataTable dataTable = new DataTable(); dataTable.Locale = CultureInfo.CurrentCulture; adapter.Fill(dataTable); return dataTable; } }</code>
:CSV文件的完整路徑。
filePath
屬性確保基於系統的區域設置正確的數據解釋。 以上是如何使用 OleDb 提供者將 CSV 檔案有效載入到 .NET 資料表中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!