Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Cekap Memuatkan Fail CSV ke dalam Jadual Data .NET Menggunakan Pembekal OleDb?

Bagaimana untuk Cekap Memuatkan Fail CSV ke dalam Jadual Data .NET Menggunakan Pembekal OleDb?

Patricia Arquette
Lepaskan: 2025-01-27 19:11:09
asal
621 orang telah melayarinya

How to Efficiently Load CSV Files into a .NET DataTable Using the OleDb Provider?

Mengimport Data CSV ke dalam Jadual Data .NET menggunakan Pembekal OleDb

Panduan ini menunjukkan cara memuatkan fail CSV dengan cekap ke dalam .NET System.Data.DataTable menggunakan pembekal OleDb. Walaupun mudah, pendekatan ini memerlukan perhatian terhadap perincian, terutamanya apabila mengendalikan data berangka.

Memanfaatkan Pembekal OleDb

Pembekal OleDb menawarkan mekanisme mudah untuk berinteraksi dengan fail CSV. Walau bagaimanapun, perangkap biasa melibatkan salah tafsir nilai berangka sebagai teks. Untuk mengurangkan perkara ini, kami akan menggunakan fail schema.ini.

Kepentingan schema.ini

Fail schema.ini menyediakan konfigurasi penting untuk pembekal OleDb, membenarkan kawalan terperinci ke atas proses import data. Secara khusus, ini membolehkan kami mentakrifkan jenis data secara eksplisit, memastikan tafsiran medan berangka yang betul.

Pelaksanaan Praktikal: Kaedah C#

Kod C# berikut menyediakan kaedah yang boleh digunakan semula untuk memuatkan data CSV ke dalam 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>
Salin selepas log masuk

Parameter Kaedah dan Kefungsian:

  • filePath: Laluan lengkap ke fail CSV anda.
  • hasHeaderRow: Boolean yang menunjukkan sama ada baris pertama mengandungi pengepala lajur (benar) atau tidak (salah).

Kaedah membina rentetan sambungan, melaksanakan pertanyaan SQL untuk memilih semua data dan mengisi DataTable dengan hasilnya. Sifat Locale memastikan tafsiran data yang betul berdasarkan tetapan serantau sistem anda.

Pendekatan diperkemas ini menyediakan penyelesaian yang mantap dan cekap untuk menyepadukan data CSV ke dalam aplikasi .NET anda. Ingat untuk mengendalikan kemungkinan pengecualian (mis., FileNotFoundException) untuk strategi pengendalian ralat yang lengkap.

Atas ialah kandungan terperinci Bagaimana untuk Cekap Memuatkan Fail CSV ke dalam Jadual Data .NET Menggunakan Pembekal OleDb?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan