IronXLを使用してC#でCSVを記述する方法

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronXLは、.NETでCSVファイルにデータを書き込む簡単な方法を提供します。.NETでExcelのワークブックを読み込み、1行のコードでCSVフォーマットとして保存し、手作業による解析を排除します。

クイックスタート:IronXLでExcelワークブックをCSVとして保存

この例では、IronXLを使用して既存のExcelファイルをCSVに変換する方法を示します。 ワークブックを読み込み、SaveAsCsv を呼び出してください。手動での解析は不要です。

  1. IronXL をNuGetパッケージマネージャでインストール

    PM > Install-Package IronXL.Excel
  2. このコード スニペットをコピーして実行します。

    IronXl.WorkBook.Load("MyExcel.xlsx").SaveAsCsv("MyExcel.csv");
  3. 実際の環境でテストするためにデプロイする

    今日プロジェクトで IronXL を使い始めましょう無料トライアル

    arrow pointer

.NETでCSVを書く方法

  • IronXLライブラリを追加する
  • C#でワークブックを作成する
  • Excel ワークブックを CSV ファイル形式で保存する
How To Work related to IronXLを使用してC#でCSVを記述する方法

ステップ1

プロジェクトにIronXLを追加するには?

どのインストール方法を使用すべきですか?

IronXLをまだインストールしていない場合は、以下の手順に従ってください:

  • Visual Studioを開き、プロジェクトメニューを選択します。
  • NuGetパッケージの管理をクリックします。
  • IronXl.Excel を検索してください。
  • インストールをクリックします。

コマンドラインを使用したい場合はどうすればよいですか?

Developerコマンドプロンプトで次のコマンドを使用してください:

Install-Package IronXL.Excel

その他のリソースはどこで見つけることができますか?

その他のチュートリアルやガイダンスについては、こちらをご覧ください:https://ironsoftware.com/csharp/excel/docs/. CSVの読み取り操作については、C#でCSVファイルを読み取る方法のガイドを参照してください。 サンプルプロジェクトをダウンロードする こちら.


チュートリアル

CSVエクスポート用のExcelワークブックを作成するにはどうすればよいですか?

ワークブックにはどのようなデータを含めるべきですか?

CSV(Comma-Separated Values)ファイルは、そのシンプルなフォーマットと普遍的な互換性により、アプリケーション間のデータ交換に広く使用されています。 分析のためのデータのエクスポート、レポートの作成、他のシステムとの統合など、IronXLはそのプロセスをシームレスにします。

まず、サンプルデータを含むExcelワークブックを作成します。 プログラムでExcelファイルを作成する際にヘルプが必要な場合は、tutorial on creating Excel files in .NETをご覧ください:

CSVエクスポートが可能なヘッダーと行を持つサンプルデータを示すExcelスプレッドシート
図1 - CSVにエクスポートされる通常のExcelデータ

どの名前空間をインポートする必要がありますか?

C#でCSVファイルを作成するには、IronXL 名前空間を追加してください:

using IronXL;
using IronXL;
Imports IronXL
$vbLabelText   $csharpLabel

ワークブックをCSVとして保存するには?

ExcelをCSVに変換するにはどのようなコードが必要ですか?

以下の C# コードは、WorkBook オブジェクトの Load メソッドを使用して Excel ファイルを読み込み、その後 SaveAs メソッドを使用して CSV 形式で保存する方法を示しています。このアプローチでは、データ型、特殊文字、および書式設定が自動的に処理されます:

:path=/static-assets/excel/content-code-examples/how-to/csharp-write-to-csv-file-save.cs
using IronXL;

// Load the existing Excel workbook
WorkBook wb = WorkBook.Load("Normal_Excel_File.xlsx"); // Import .xls, .csv, or .tsv file

// Save the workbook as a CSV file with the worksheet name appended
wb.SaveAs("Excel_To_CSV.csv"); // Exported as: Excel_To_CSV.Sheet1.csv
Imports IronXL

' Load the existing Excel workbook
Dim wb As WorkBook = WorkBook.Load("Normal_Excel_File.xlsx") ' Import .xls, .csv, or .tsv file

' Save the workbook as a CSV file with the worksheet name appended
wb.SaveAs("Excel_To_CSV.csv") ' Exported as: Excel_To_CSV.Sheet1.csv
$vbLabelText   $csharpLabel

特定のワークシートを CSV に保存するにはどうすればよいですか?

複数シートのワークブックを扱う場合、特定のワークシートをエクスポートすることができます。 IronXLはこのようなシナリオに柔軟に対応します。 ワークシートの管理については、当社のドキュメントを参照してください:

using IronXL;

// Load workbook and access specific worksheet
WorkBook workBook = WorkBook.Load("MultiSheet_Excel.xlsx");
WorkSheet sheet = workBook.GetWorkSheet("Sales_Data");

// Save only the specific worksheet as CSV
sheet.SaveAsCsv("Sales_Data_Export.csv");

// Alternatively, save with custom delimiter
sheet.SaveAsCsv("Sales_Data_Tab.tsv", delimiter: "\t");
using IronXL;

// Load workbook and access specific worksheet
WorkBook workBook = WorkBook.Load("MultiSheet_Excel.xlsx");
WorkSheet sheet = workBook.GetWorkSheet("Sales_Data");

// Save only the specific worksheet as CSV
sheet.SaveAsCsv("Sales_Data_Export.csv");

// Alternatively, save with custom delimiter
sheet.SaveAsCsv("Sales_Data_Tab.tsv", delimiter: "\t");
Imports IronXL

' Load workbook and access specific worksheet
Dim workBook As WorkBook = WorkBook.Load("MultiSheet_Excel.xlsx")
Dim sheet As WorkSheet = workBook.GetWorkSheet("Sales_Data")

' Save only the specific worksheet as CSV
sheet.SaveAsCsv("Sales_Data_Export.csv")

' Alternatively, save with custom delimiter
sheet.SaveAsCsv("Sales_Data_Tab.tsv", delimiter:=vbTab)
$vbLabelText   $csharpLabel

CSV出力はどのように見えますか?

出力CSVファイルは、テキストエディタで開くと以下のように表示されます。 IronXLがコンマを区切り文字として適切にデータをフォーマットし、特殊文字を含むテキストフィールドを処理していることに注目してください:

適切なフォーマットと構造を持つカンマ区切りデータを示すCSVファイルのテキストエディタビュー
図2 -出力CSVファイル

複数のワークシートを扱うにはどうすればよいですか?

Excelファイルに複数のワークシートが含まれている場合、IronXLはCSVエクスポートのためのいくつかのアプローチを提供します。 スプレッドシート ファイルの種類の変換については、包括的なガイドを参照してください:

using IronXL;
using System;

// Load workbook with multiple sheets
WorkBook workBook = WorkBook.Load("MultipleSheets.xlsx");

// Method 1: Export all sheets to separate CSV files
foreach (WorkSheet sheet in workBook.WorkSheets)
{
    string fileName = $"{sheet.Name}_Export.csv";
    sheet.SaveAsCsv(fileName);
    Console.WriteLine($"Exported {sheet.Name} to {fileName}");
}

// Method 2: Combine all sheets into one CSV
var combinedData = workBook.GetWorkSheet(0);
for (int i = 1; i < workBook.WorkSheets.Count; i++)
{
    var currentSheet = workBook.GetWorkSheet(i);
    // Add logic to append data from currentSheet to combinedData
}
combinedData.SaveAsCsv("Combined_Output.csv");
using IronXL;
using System;

// Load workbook with multiple sheets
WorkBook workBook = WorkBook.Load("MultipleSheets.xlsx");

// Method 1: Export all sheets to separate CSV files
foreach (WorkSheet sheet in workBook.WorkSheets)
{
    string fileName = $"{sheet.Name}_Export.csv";
    sheet.SaveAsCsv(fileName);
    Console.WriteLine($"Exported {sheet.Name} to {fileName}");
}

// Method 2: Combine all sheets into one CSV
var combinedData = workBook.GetWorkSheet(0);
for (int i = 1; i < workBook.WorkSheets.Count; i++)
{
    var currentSheet = workBook.GetWorkSheet(i);
    // Add logic to append data from currentSheet to combinedData
}
combinedData.SaveAsCsv("Combined_Output.csv");
Imports IronXL
Imports System

' Load workbook with multiple sheets
Dim workBook As WorkBook = WorkBook.Load("MultipleSheets.xlsx")

' Method 1: Export all sheets to separate CSV files
For Each sheet As WorkSheet In workBook.WorkSheets
    Dim fileName As String = $"{sheet.Name}_Export.csv"
    sheet.SaveAsCsv(fileName)
    Console.WriteLine($"Exported {sheet.Name} to {fileName}")
Next

' Method 2: Combine all sheets into one CSV
Dim combinedData = workBook.GetWorkSheet(0)
For i As Integer = 1 To workBook.WorkSheets.Count - 1
    Dim currentSheet = workBook.GetWorkSheet(i)
    ' Add logic to append data from currentSheet to combinedData
Next
combinedData.SaveAsCsv("Combined_Output.csv")
$vbLabelText   $csharpLabel

パフォーマンスについてはどう思いますか?

IronXLは大きなExcelファイルに対して、メモリ使用量を最小限に抑える効率的なストリーミング機能を提供します。 膨大なデータセットを扱う場合は、IronXLの最適化されたメソッドを使用してください。 高度なシナリオについては、さまざまなフォーマットへのデータのエクスポートに関するガイドを参照してください。

データテーブルを使用できますか?

IronXLは.NETのDataTable構造とシームレスに統合されており、データベースやインメモリコレクションから簡単にデータをエクスポートできます。 DataTableをCSVに変換するのチュートリアルを参照してください:

using IronXL;
using System.Data;

// Create a DataTable with sample data
DataTable dataTable = new DataTable();
dataTable.Columns.Add("ID", typeof(int));
dataTable.Columns.Add("Name", typeof(string));
dataTable.Columns.Add("Price", typeof(decimal));

// Add sample rows
dataTable.Rows.Add(1, "Product A", 29.99m);
dataTable.Rows.Add(2, "Product B", 49.99m);

// Convert DataTable to WorkSheet
WorkBook workBook = WorkBook.Create();
WorkSheet sheet = workBook.CreateWorkSheet("Products");
sheet.InsertDataTable(dataTable, "A1");

// Save as CSV
workBook.SaveAsCsv("Products.csv");
using IronXL;
using System.Data;

// Create a DataTable with sample data
DataTable dataTable = new DataTable();
dataTable.Columns.Add("ID", typeof(int));
dataTable.Columns.Add("Name", typeof(string));
dataTable.Columns.Add("Price", typeof(decimal));

// Add sample rows
dataTable.Rows.Add(1, "Product A", 29.99m);
dataTable.Rows.Add(2, "Product B", 49.99m);

// Convert DataTable to WorkSheet
WorkBook workBook = WorkBook.Create();
WorkSheet sheet = workBook.CreateWorkSheet("Products");
sheet.InsertDataTable(dataTable, "A1");

// Save as CSV
workBook.SaveAsCsv("Products.csv");
Imports IronXL
Imports System.Data

' Create a DataTable with sample data
Dim dataTable As New DataTable()
dataTable.Columns.Add("ID", GetType(Integer))
dataTable.Columns.Add("Name", GetType(String))
dataTable.Columns.Add("Price", GetType(Decimal))

' Add sample rows
dataTable.Rows.Add(1, "Product A", 29.99D)
dataTable.Rows.Add(2, "Product B", 49.99D)

' Convert DataTable to WorkSheet
Dim workBook As WorkBook = WorkBook.Create()
Dim sheet As WorkSheet = workBook.CreateWorkSheet("Products")
sheet.InsertDataTable(dataTable, "A1")

' Save as CSV
workBook.SaveAsCsv("Products.csv")
$vbLabelText   $csharpLabel

ライセンスはどのように設定しますか?

CSVエクスポートソリューションを導入する前に、IronXLライセンスを適切に設定してください。 ライセンスキーの使用に関するガイドを参照して、さまざまな環境でのライセンスの適用について学んでください。


ライブラリのクイックアクセス

IronXL APIリファレンスドキュメント

セルの結合、分割、Excelスプレッドシートでの作業に関する詳細なメソッドシグネチャや追加CSVエクスポートオプションについてはIronXL APIリファレンスドキュメントをご確認ください。より詳細な方法署名と追加のCSV輸出オプションについては、弊社のAPIリファレンスをご覧ください。

IronXL APIリファレンスドキュメント Also refer to our [API Reference](https://ironsoftware.com/csharp/excel/object-reference/api/) for full details.
Documentation related to ライブラリのクイックアクセス

よくある質問

C#でCSVファイルを手動で解析せずに記述するにはどうすればよいですか?

IronXLはC#でCSVファイルを記述するためのシンプルな1行ソリューションを提供します。Excelワークブックを読み込み、SaveAsCsvメソッドを使用してCSV形式で保存することで、手動での解析や複雑な文字列操作が不要になります。

.NETでExcelをCSVに変換する最速の方法は何ですか?

IronXLを使えば、たった1行のコードでExcelファイルをCSVに変換することができます:IronXl.WorkBook.Load("MyExcel.xlsx").SaveAsCsv("MyExcel.csv")。これはすべてのデータ型、特殊文字、フォーマットを自動的に処理します。

C#でCSVファイルを書き込むためのライブラリはどのようにインストールするのですか?

IronXLはVisual StudioのNuGetパッケージ・マネージャから'IronXL.Excel'を検索してインストールするか、開発者コマンド・プロンプトから適切なインストール・コマンドを使用してインストールすることができます。

CSV操作にはどの名前空間をインポートする必要がありますか?

IronXLを使ってCSVファイルを書くには、C#ファイルの先頭に'using IronXL;'を追加してIronXL名前空間をインポートする必要があります。

特定のワークシートをCSV形式で保存できますか?

はい、IronXLではExcelワークブックから個々のワークシートをCSV形式で保存することができます。

CSVに変換する場合、どのようなデータ形式がサポートされますか?

IronXLはExcelのワークブックをCSV形式に変換する際、テキスト、数字、日付、特殊文字を含む様々なデータタイプを自動的に処理し、変換プロセス全体を通してデータの整合性を保証します。

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

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

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

準備はできましたか?
Nuget ダウンロード 2,052,917 | バージョン: 2026.6 just released
Still Scrolling Icon

まだスクロールしていますか?

すぐに証拠が欲しいですか? PM > Install-Package IronXL.Excel
サンプルを実行する あなたのデータがスプレッドシートになるのを見る。