ホームページ >バックエンド開発 >C++ >OLEDBを使用してC#でExcelファイルを直接読み取るにはどうすればよいですか?

OLEDBを使用してC#でExcelファイルを直接読み取るにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2025-02-01 11:46:10202ブラウズ

How Can I Directly Read Excel Files in C# Using OleDb?

OLEDBを使用してC#でExcelファイルを直接読み取ります

多くのC#アプリケーションには、Excelファイルからデータを読み取る機能が必要です。 いくつかのライブラリはこのプロセスを簡素化し、Excelデータへの直接アクセスを提供します。 OLEDBライブラリは、人気のあるオープンソースの選択肢です

Excelファイルからデータを読むためにOLEDBを使用する方法は次のとおりです。

この改良されたコードは、接続を確立し、指定されたワークシートからデータを選択し、データテーブルに保存します。 個々のセルは、座標または列名からアクセスできます。
<code class="language-csharp">string fileName = Path.Combine(Directory.GetCurrentDirectory(), "fileNameHere.xlsx"); //Improved path handling
string connectionString = $"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={fileName};Extended Properties=\"Excel 12.0 Xml;HDR=YES;IMEX=1;\""; //Updated for newer Excel versions

using (OleDbConnection connection = new OleDbConnection(connectionString))
{
    connection.Open();
    OleDbDataAdapter adapter = new OleDbDataAdapter($"SELECT * FROM [{worksheetNameHere}$]", connection);
    DataSet ds = new DataSet();
    adapter.Fill(ds, "dataTable");

    DataTable data = ds.Tables["dataTable"];

    foreach (DataRow row in data.Rows)
    {
        string cellValue = row["columnName"].ToString();
        //Process cellValue
    }

    // Accessing data directly as strings:
    string cellValueDirect = data.Rows[0].Field<string>("columnName");
    //Process cellValueDirect

}</code>
ステートメントは、適切なリソースのクリーンアップを保証します。 接続文字列は、新しいExcelバージョン(XLSX)をサポートするために更新され、ヘッダーとデータ型のより良い処理のために

およびusingを含む。 HDR=YESこの例は行を繰り返し、IMEX=1

の両方を使用して文字列として細胞値を取得する方法を示します。 OLEDBは、分析と操作のためにC#アプリケーションにExcelデータをインポートするための簡単な方法を提供します。

以上がOLEDBを使用してC#でExcelファイルを直接読み取るにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。