Charge efficacement les données CSV à .NET DataTable
Chargement des données CSV à DataTable est une tâche courante dans le traitement et l'analyse des données. Cet article explique comment utiliser la fonction construite.
Utiliser la fonction ADO.NET standard
Framework ADO.NET standard ne prend pas directement en charge la lecture des fichiers CSV. Cependant, nous pouvons utiliser le fournisseur
<.> Utilisez le fichier .ini pour créer une architecture
Pour créer un fichier d'architecture (schema.ini), suivez les étapes suivantes:
Mettez le code suivant dans un fichier nommé schema.ini:
<code>[FileName.csv] Format=CSVDelimited ColNameHeader=True MaxScanRows=0</code>
Cette méthode utilise le chemin du fichier CSV et un logo en entrée. Il renvoie une données remplie basée sur les données CSV.
Cette méthode accepte le chemin de fichier CSV et une valeur booléenne en tant que paramètre, indiquant si la première ligne est l'en-tête. Il renvoie une données qui remplit les données CSV. Le code amélioré a augmenté la référence de l'espace de dénomination
et<code class="language-csharp">using System.Data; using System.Data.OleDb; using System.Globalization; using System.IO; static DataTable GetDataTableFromCsv(string path, bool isFirstRowHeader) { string header = isFirstRowHeader ? "Yes" : "No"; string pathOnly = Path.GetDirectoryName(path); string fileName = Path.GetFileName(path); string sql = @"SELECT * FROM [" + fileName + "]"; using (OleDbConnection connection = new OleDbConnection( @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + pathOnly + ";Extended Properties=\"Text;HDR=" + header + "\"")) 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>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!