C#を使用してDatatableをCSVに変換する方法
IronXLを使用してデータテーブルをCSVにエクスポートすることができます。既存のデータテーブルを取り込み、いくつかのステップでCSVに変換するだけです。 この記事では、この件に関する簡単な例を紹介します。
C#でDataTableをCSVに変換する方法
- DataTableをCSVに変換するC#ライブラリをダウンロードしてインストール
- 活用する
データテーブル
新しいデータを保存するクラス - 新しいスプレッドシートを作成するか、既存のスプレッドシートをインポートする
- テーブル行をループして、ワークシート内のセルに応じて値を挿入する
- CSVファイルへのエクスポート
CSVとして保存
C# 関数
ステップ 1
1. IronXL Free を追加
あなたがアプリケーションでそれを使用する前に、まずIronXLをインストールする必要があります。 幸運なことに、プロジェクトにIronXLをインストールするための多くのオプションが提供されています。
以下のリンクを使用して彼らのサイトからダウンロードしてください:https://ironsoftware.com/csharp/excel/docs/
または
- Visual Studioでプロジェクトメニューを選択します
- NuGet パッケージの管理をクリック
- IronXL.Excelを検索
- インストールをクリック
Install-Package IronXL.Excel
チュートリアルの方法
2 テーブルを作成してCSVにエクスポート
準備が整いました。
まずは IronXL ネームスペースをインポートします。
using IronXL;
using IronXL;
Imports IronXL
次に、以下のコードを追加します:
/**
Save a datatable to CSV
anchor-create-and-export-datatable-to-csv
**/
private void button6_Click(object sender, EventArgs e)
{
DataTable table = new DataTable();
table.Columns.Add("Example_DataSet", typeof(string));
table.Rows.Add("0");
table.Rows.Add("1");
table.Rows.Add("2");
table.Rows.Add("3");
table.Rows.Add("1");
table.Rows.Add("2");
table.Rows.Add("3");
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
wb.Metadata.Author = "OJ";
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;
foreach (DataRow row in table.Rows)
{
ws ["A" + (rowCount)].Value = row [0].ToString();
rowCount++;
}
wb.SaveAsCsv("Save_DataTable_CSV.csv", ";"); // Saved as : Save_DataTable_CSV.Sheet1.csv
}
/**
Save a datatable to CSV
anchor-create-and-export-datatable-to-csv
**/
private void button6_Click(object sender, EventArgs e)
{
DataTable table = new DataTable();
table.Columns.Add("Example_DataSet", typeof(string));
table.Rows.Add("0");
table.Rows.Add("1");
table.Rows.Add("2");
table.Rows.Add("3");
table.Rows.Add("1");
table.Rows.Add("2");
table.Rows.Add("3");
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
wb.Metadata.Author = "OJ";
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;
foreach (DataRow row in table.Rows)
{
ws ["A" + (rowCount)].Value = row [0].ToString();
rowCount++;
}
wb.SaveAsCsv("Save_DataTable_CSV.csv", ";"); // Saved as : Save_DataTable_CSV.Sheet1.csv
}
'''
'''Save a datatable to CSV
'''anchor-create-and-export-datatable-to-csv
'''*
Private Sub button6_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim table As New DataTable()
table.Columns.Add("Example_DataSet", GetType(String))
table.Rows.Add("0")
table.Rows.Add("1")
table.Rows.Add("2")
table.Rows.Add("3")
table.Rows.Add("1")
table.Rows.Add("2")
table.Rows.Add("3")
Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
wb.Metadata.Author = "OJ"
Dim ws As WorkSheet = wb.DefaultWorkSheet
Dim rowCount As Integer = 1
For Each row As DataRow In table.Rows
ws ("A" & (rowCount)).Value = row (0).ToString()
rowCount += 1
Next row
wb.SaveAsCsv("Save_DataTable_CSV.csv", ";") ' Saved as : Save_DataTable_CSV.Sheet1.csv
End Sub
上記のコードはデータテーブルを作成し、その後、所有者/作成者として「OJ」を指定して新しいワークブックを作成します。 次に、データテーブルからExcelワークシートにデータを挿入するforeachループが続きます。 最後に、SaveAsCsv
メソッドはデータテーブルをCSVにエクスポートするために使用されます。
出力されたExcelワークシートは次のように表示されます:
ライブラリ クイック アクセス
IronXL APIリファレンスドキュメント
IronXL APIリファレンス ドキュメンテーションを使用して、Excelスプレッドシートでセルのマージ、マージ解除、およびセルの操作方法について学び、共有しましょう。
IronXL APIリファレンスドキュメント