フッターコンテンツにスキップ
IRONXLの使用

C#で `DataTable` をCSVにエクスポートする方法

IronXL を使用すると、Microsoft Excel をインストールしなくても、C# でDataTableから CSV へのシームレスな変換が可能になります。 このスタンドアロン .NET ライブラリは、カスタム構造と区切り文字を使用してDataTables CSV ファイルに自動的に変換するシンプルな API を提供し、開発者が簡単にデータをエクスポートできるようにします。

IronXL は、 Microsoft Excel をインストールしなくても、開発者が C# .NET テクノロジーで CSV ファイルなどの Microsoft Excel ドキュメントを操作できるようにする人気のライブラリです。 登録済みの型を CSV ファイルに自動変換し、カスタム構造を持つ CSV ファイルを作成することができます。

IronXL ライブラリはどのような機能を提供していますか?

Microsoft Excel ドキュメントは、C# IronXL .NET ライブラリを使用して読み取られ、 CSV ファイルに変換されます。 IronXL は、さまざまなスプレッドシート形式を読み取ることができるスタンドアロンの .NET ソフトウェア ライブラリです。 Microsoft.Office.Interop.Excel に依存せず、Microsoft Excel のインストールも必要ありません。

IronXL のユーザーフレンドリーな C# APIを使用すると、.NET 環境でExcel スプレッドシート ファイルをすばやく読み取り、変更、作成できます。 .NET Core、.NET Framework、Xamarin、Mobile、 LinuxmacOSAzureはすべて IronXL で完全にサポートされています。

  • C# 用の .NET Core および .NET Framework の主要な Excel スプレッドシートライブラリには IronXL が含まれます。
  • コンソール、Windows フォーム、Web アプリケーションなど、ほぼすべての .NET Framework がサポートされています。
  • IronXL は、Windows、Linux、および macOS オペレーティング システムで動作します。
  • IronXL を使用すると、Excel ファイルの読み取りが簡単かつ迅速になります。
  • IronXL は、XLSX、XLS、CSV、TSV、XLST、XLSM ファイルなど、複数の Excel 形式をサポートしています。
  • IronXL は、XLS、CSV、TSV、JSON、XML などのさまざまな形式でファイルをエクスポートします。
  • IronXL は Excel 計算を生成し、数式をサポートします。
  • IronXL は、テキスト、数値、日付、通貨、パーセンテージなどの Excel 列データ形式をサポートしています。

詳細については、 IronXL ドキュメントの概要をご覧ください。

Visual Studio で新しいプロジェクトを作成するにはどうすればよいですか?

Visual Studio で IronXL フレームワークを使用する前に .NET プロジェクトを作成する必要があります。 Visual Studio のバージョンはどれでも利用可能ですが、最新のものをお勧めします。 ニーズに応じて、Windows フォーム アプリケーションまたはさまざまなプロジェクト テンプレートを構築できます。 簡単にするために、このチュートリアルではコンソール アプリケーションを使用します。

! Visual Studio の [新しいプロジェクトの作成] ダイアログには、コンソール アプリ、ASP.NET Core Web アプリ、Blazor サーバー アプリのオプションを含むさまざまな .NET プロジェクト テンプレートが表示されています。 Visual Studioで新しいプロジェクトを作成

次に、プロジェクトの名前と場所を入力します。

! Visual Studio プロジェクト構成ダイアログには、コンソール出力を備えた Windows をターゲットとする、プロジェクト名が 'ConsoleApp1' の新しい C# コンソール アプリのセットアップが表示されています。 新しいプロジェクトの設定

次に、次の構造を選択します。 このプロジェクトでは .NET Core 6 が使用されます。

フレームワークとして .NET 6.0 (長期サポート) が選択されたコンソール アプリ構成を示す Visual Studio プロジェクト作成ダイアログ。 .NET Frameworkのバージョンを選択

アプリケーションがソリューションを生成すると、program.cs ファイルが開かれ、プログラムコードを入力してアプリケーションをビルド/実行できます。

! CSV エクスポート機能を実装するための初期コード構造を備えた IronXLConsole プロジェクトを表示する Visual Studio の空の C# コンソール アプリケーション ウィンドウ。 新しく作成されたコンソールアプリケーションプロジェクト

その後、ライブラリを追加してコードを評価するために使用することができます。 .NET MAUI アプリケーションVB.NET プロジェクトなどの他のプロジェクト タイプの場合、プロセスは同様ですが、フレームワーク固有の考慮事項があります。

どのようにIronXLライブラリをインストールしますか? IronXL ライブラリをダウンロードしてインストールする方法は 4 つあります。 それらは次のとおりです。 * Visual Studio からインストール * Visual Studio パッケージ マネージャー コンソールを使用してインストール * NuGet ウェブサイトから直接ダウンロード * IronXL ウェブサイトから直接ダウンロード ### Visual Studio のインストールにはどの方法を使用すればよいですか? NuGet パッケージ マネージャーを使用して、IronXL モジュールをインストールできます。 IronXL を見つけるには、まず NuGet パッケージ マネージャーを起動し、ブラウズ ペインで探します。 検索結果から選択して IronXL をインストールします。 その後、このアプリで IronXL ライブラリを使用できるようになります。 以下の画像は、Visual Studio の NuGet パッケージ マネージャーを起動する方法を示しています。 ! [Visual Studio のツール メニューが展開され、[ツール] ドロップダウン メニューの下で [NuGet パッケージ マネージャー] オプションと [パッケージ マネージャー コンソール] が強調表示されています。](/static-assets/excel/blog/csharp-export-csv-tutorial/csharp-export-csv-tutorial-5.webp) **NuGetパッケージマネージャへのナビゲート** ! [NuGet パッケージ マネージャー インターフェイスには、バージョン 2022.3.0 の IronXL.Excel パッケージが表示され、ダウンロード数が 133,000 件であることと、簡単に統合できるようにインストール ボタンが表示されています。](/static-assets/excel/blog/csharp-export-csv-tutorial/csharp-export-csv-tutorial-6.webp) **NuGet パッケージ マネージャー UI で IronXL パッケージをインストール** ### パッケージ マネージャー コンソールはいつ使用すればよいですか? 多くの開発者は、タスクを実行するためにコンソールを使用することを好みます。 したがって、ターミナルインストールもオプションです。 コマンドラインを使用して IronXL をインストールするには、以下の手順に従ってください。 * Visual Studio の **ツール** > **NuGet パッケージ マネージャー** > パッケージ マネージャー インターフェイスに移動します。 * パッケージ マネージャーのコンソールタブに次のコマンドを入力します。 ```shell :ProductInstall ``` * IronXL がアクティブなプロジェクトにダウンロードおよびインストールされるのを待ちます。 ! [Visual Studio のパッケージ マネージャー コンソールに、コマンド 'Install-Package IronXL.Excel' とインストール成功の確認メッセージが表示されます。](/static-assets/excel/blog/csharp-export-csv-tutorial/csharp-export-csv-tutorial-7.webp) **パッケージ マネージャー コンソール UI で IronXL パッケージをインストール** ### NuGet Web サイトからダウンロードする理由は何ですか? NuGet パッケージはウェブサイトから直接ダウンロードすることができます。 この方法は、インターネット アクセスが制限されている環境で作業する場合や、パッケージを手動で管理する必要がある場合に特に便利です。 *[公式 NuGet リンク](https://www.nuget.org/packages/IronXL.Excel/)に移動します。 * ダウンロード パッケージ オプションは右側のメニューにあります。 * 保存されたファイルを二回クリックします。それはすぐにインストールされます。 * その後、ソリューションを再読み込みし、プロジェクトで利用を始めます。 ### IronXL Web サイトから直接インストールするにはどうすればよいですか? ウェブサイトから最新のパッケージを直接ダウンロードするには、この [IronXL ZIP ファイルのダウンロードリンク](https://ironsoftware.com/csharp/excel/packages/IronXL.zip) をクリックしてください。 このリンクは IronXL のライブラリ DLL の最新バージョンを含む ZIP ファイルをダウンロードします。 ダウンロードが終了したら、ZIP ファイルの内容を任意のディレクトリに抽出します。 ダウンロードしたファイルをプロジェクトに追加するには、以下の手順に従ってください。 * ソリューションウィンドウから、プロジェクトを右クリックします。 * 参照を選択し、IronXL DLLs を含む抽出されたフォルダーに移動します。 * DLL を選択し、OK をクリックしてアクティブなプロジェクトに参照として追加します。 デプロイメント シナリオでは、 [Docker コンテナーに IronXL をセットアップし](/csharp/excel/get-started/docker/)たり、 [AWS Lambda](/csharp/excel/get-started/aws/)や[Azure Functions](/csharp/excel/get-started/azure/)などのクラウド プラットフォームにデプロイしたりすることもできます。 ## `DataTable`を CSV ファイルにエクスポートするにはどうすればよいですか? IronXL を使用すると、 `DataTables` [CSV ファイルに簡単かつ迅速にエクスポート](/csharp/excel/how-to/csharp-datatable-to-csv/)できます。 カスタム区切り文字とエンコード オプションをサポートし、新しい CSV ファイルにデータを書き込むのに役立ちます。 最初に、下のコード画像のように、IronXL ネームスペースを含めて IronXL クラスとメソッドを使用します。 ! [C# コード エディターでは、DataTable から CSV へのエクスポート実装の構文が強調表示された 'using IronXL;' および 'using System.Data;' 名前空間宣言が表示されています。](/static-assets/excel/blog/csharp-export-csv-tutorial/csharp-export-csv-tutorial-8.webp) **一般的なネームスペースを追加** Excel ファイルは IronXL を使用して作成され、その後 [`WorkBook`](/csharp/excel/object-reference/api/IronXL.WorkBook.html) オブジェクトに変換されます。 次に、これらのオブジェクトに対してさまざまな操作を実行します。 以下のサンプルコードは、`DataTable` を Excel ワークシートに変換して Excel ファイルをビルドします。 ```cs using IronXL; using System.Data; // Entry point of the application static void Main(string[] args) { // Specify the file path for the CSV file output ExportToExcel("H:\\test.csv"); } // Exports the DataTable to an Excel file and saves it as CSV public static void ExportToExcel(string filepath) { // Create a DataTable and add columns and rows DataTable table = new DataTable(); table.Columns.Add("DataSet_Fruits", typeof(string)); table.Rows.Add("Apple"); table.Rows.Add("Orange"); table.Rows.Add("Strawberry"); table.Rows.Add("Grapes"); table.Rows.Add("Watermelon"); table.Rows.Add("Bananas"); table.Rows.Add("Lemons"); // Create a new WorkBook and add the DataTable data to it WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS); var writer = wb.DefaultWorkSheet; int rowCount = 1; foreach (DataRow row in table.Rows) { // Write each item from the DataTable into the worksheet starting from cell A1 writer["A" + (rowCount)].Value = row[0].ToString(); rowCount++; } // Save the workbook as a CSV file with a specified delimiter wb.SaveAsCsv(filepath, ";"); } ``` 上述のコードは、`DataTable` を Excel ファイルにエクスポートします。`DataTable` が作成されると、列見出しが作成されます。 次に、最初の列を設立した後、一行ずつ追加します。 `DataTable` オブジェクトに列や行を追加した後に、それらのデータを保持するための `WorkBook` オブジェクトが作成されます。 その後、`WorkBook` オブジェクトに追加される`WorkSheet` オブジェクトが構築されます。 `DataTable` からの各値が読み取られ、`WorkSheet` に値を追加する前に `foreach` ループが使用されます。 すべての値がワークシートに追加された後、 [`SaveAsCsv`](/csharp/excel/object-reference/api/IronXL.WorkBook.html#IronXL_WorkBook_SaveAsCsv_System_String_System_String_)メソッドはそれらをCSVファイルに保存します。区切り文字とファイルの場所の両方をパラメータとして指定できます。 より複雑なシナリオでは、[複数の DataTables を異なるワークシートとしてエクスポートし](/csharp/excel/how-to/export-dataset-datatable/)たり、 [DataSet](/csharp/excel/examples/excel-sql-dataset/)を操作してより構造化されたデータ編成を行ったりする必要がある場合があります。 ### さまざまなCSV形式の操作 IronXL は、CSV ファイルの操作時に柔軟性を提供します。 以下は、カスタム書式とエンコードを使用して`DataTable`をエクスポートする方法を示した例です。 ```cs // Export with custom delimiter and encoding public static void ExportToCSVWithOptions(DataTable dataTable, string filepath) { // Create workbook from DataTable WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX); WorkSheet ws = wb.CreateWorkSheet("DataExport"); // Add headers for (int i = 0; i < dataTable.Columns.Count; i++) { ws[$"{(char)('A' + i)}1"].Value = dataTable.Columns[i].ColumnName; } // Add data rows for (int row = 0; row < dataTable.Rows.Count; row++) { for (int col = 0; col < dataTable.Columns.Count; col++) { ws[$"{(char)('A' + col)}{row + 2}"].Value = dataTable.Rows[row][col]; } } // Save with custom delimiter (comma) and UTF-8 encoding wb.SaveAsCsv(filepath, ",", System.Text.Encoding.UTF8); } ``` このアプローチにより、エクスポート プロセスをより細かく制御できるようになり、[セル データの形式を設定し](/csharp/excel/how-to/set-cell-data-format/)たり、出力構造をカスタマイズしたりできるようになります。 ![適切な CSV 形式で追加の区切り文字なしで、列 A に果物のリスト (リンゴ、オレンジ、イチゴ、ブドウ、スイカ、バナナ、レモン) を表示する Excel スプレッドシート。](/static-assets/excel/blog/csharp-export-csv-tutorial/csharp-export-csv-tutorial-9.webp) **出力されたCSVファイル** 上記の実行結果のサンプル結果が示されています。 スクリーンショットでは、データテーブルの各データが新しく形成された Excel シートに個別に追加されています。 エクスポートする前にセルに[書式を適用したり](/csharp/excel/examples/excel-style-cells-borders-fonts/)、計算値に[数式を追加したりする](/csharp/excel/examples/excel-formulas-csharp/)こともできます。 より高度な CSV 操作を行うには、次の操作を実行できます。 - カスタム区切り文字を使用した[CSVファイルの読み取り](/csharp/excel/how-to/csharp-read-csv-file/) - 特定のエンコーディングで[CSVファイルに書き込む](/csharp/excel/how-to/csharp-write-to-csv-file/) -[異なるスプレッドシート形式間の変換](/csharp/excel/how-to/convert-spreadsheet-file-types/) - [JSONまたはXML形式へのエクスポート](/csharp/excel/how-to/csharp-convert-xlsx-to-csv/) IronXL チュートリアルの詳しい情報については、[Excel フォーマットへのエクスポート方法](/csharp/excel/how-to/c-sharp-export-to-excel/)をクリックしてください。 ## CSV エクスポートに IronXL を使用する必要があるのはなぜですか? IronXL は最も人気のある Excel ツールの一つです。 それは外部ソースからのいかなる他のライブラリにも依存しません。 それは自立しており、Microsoft Excel のインストールを必要としません。 それは、数多くのチャネルを通じて動作します。 IronXLはすべてのMicrosoft Excelドキュメント関連タスクのオールインワンソリューションを提供します。 [数式の計算](/csharp/excel/how-to/math-functions/)、[文字列または数値の並べ替え](/csharp/excel/how-to/sort-cells/)、[トリミングと追加](/csharp/excel/how-to/trim-cell-range/)、検索と置換、[結合と結合解除](/csharp/excel/how-to/csharp-excel-merge-cells/)、ファイルの保存などを実行できます。また、スプレッドシートのデータを検証するとともに[、セルのデータ形式を設定する](/csharp/excel/examples/excel-number-formats/)こともできます。 また、CSV ファイルの読み取りと書き込みもサポートしており、Excel データのように扱うことができます。 その他の利点は次のとおりです: - 機密データのエクスポートに対する[パスワード保護](/csharp/excel/how-to/set-password-workbook/) - 大規模データセットの[パフォーマンス最適化](/csharp/excel/product-updates/milestones-performance/) - CSVエクスポート前のExcelでの[条件付き書式設定](/csharp/excel/how-to/conditional-formatting/)のサポート -[名前付き範囲](/csharp/excel/how-to/named-range/)と[名前付きテーブルの](/csharp/excel/how-to/named-table/)サポート - サポートされている形式での[ハイパーリンクの](/csharp/excel/how-to/hyperlinks/)保存 [IronXL](/csharp/excel/) の開始価格は$799です。 また、製品サポートおよび更新のための 1 年間のサブスクリプション費用を支払う選択肢も提供しています。 追加料金で、IronXL は無制限の再配布のためのセキュリティを提供します。 より詳細な約価格情報を調べるには、この[ライセンスページ](/csharp/excel/licensing/)をご覧ください。

よくある質問

C#でDataTableをCSVファイルにエクスポートするにはどうすれば良いですか?

IronXLを使用して、ワークブックを作成し、データをワークシートオブジェクトにエクスポートすることで、DataTableをCSVファイルにエクスポートできます。これにより、Microsoft Excelを必要とせずにスムーズな変換とエクスポートが可能になります。

このライブラリを使ってどんなファイル形式をエクスポートできますか?

IronXLは、XLS、CSV、TSV、JSONなどの様々な形式でデータをエクスポートでき、異なるデータニーズに柔軟に対応します。

このライブラリでExcelのような操作を行うことは可能ですか?

はい、IronXLは、数式計算、データソート、ファイル保存といったExcelに似た操作を可能にし、Excel関連のプログラミングタスクに包括的なツールです。

このライブラリを使用するためにMicrosoft Excelをインストールする必要がありますか?

いいえ、IronXLはスタンドアロンの.NETライブラリで、Microsoft Excelをインストールする必要がなく、開発者がC#アプリケーション内で直接Excel文書を操作できます。

このライブラリと互換性のあるプラットフォームは何ですか?

IronXLは、.NET Core、.NET Framework、Xamarin、およびWindows、Linux、macOSといったオペレーティングシステムを含む複数のプラットフォームと互換性があります。

プロジェクトにIronXLライブラリをインストールするにはどうすれば良いですか?

.NETプロジェクトにIronXLをインストールするには、Visual Studioを使用してNuGetパッケージマネージャーにアクセスするか、NuGetまたはIronXLウェブサイトから直接ダウンロードします。

このライブラリの利用できる価格オプションは何ですか?

IronXLは、製品のサポートとアップデートを含む1年のサブスクリプションオプションの開始価格を提供し、継続的なサポートと最新機能へのアクセスを提供します。

カーティス・チャウ
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。