如何使用C#將Datatable轉換為CSV
您可以使用 IronXL 將現有的資料表在幾個步驟中轉換為 CSV,從而將資料表導出為 CSV。 本文旨在向您快速示範此例。
如何在C#中將DataTable轉換為CSV
- 下載並安裝將DataTable轉換為CSV的C#庫
- 利用
資料表
用來存儲新數據的類 - 建立新電子表格或匯入現有電子表格
- 循環遍歷表格行並相應地填充工作表中的單元格
- 匯出到 CSV 檔案配
另存為CSV
C# 函數
第一步
1. 新增 IronXL 免費版本
您需要先安裝 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’為其擁有者/創建者。 foreach 迴圈隨後將資料表中的資料插入 Excel 工作表中。 最後,SaveAsCsv
方法用於將 datatable 導出為 csv。
輸出的Excel工作表如下所示: