如何使用C#將Datatable轉換為CSV
您可以使用 IronXL 將現有的資料表在幾個步驟中轉換為 CSV,從而將資料表導出為 CSV。 本文旨在向您快速示範此例。
如何在C#中將DataTable轉換為CSV
- 下載並安裝將 DataTable 轉換為 CSV 的 C# 函式庫
- 利用
DataTable
類別來儲存新數據 - 建立新電子表格或匯入現有電子表格
- 循環遍歷表格行並相應地填充工作表中的單元格
- 使用
SaveAsCsv
C# 函數匯出到 CSV 文件
第一步
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
方法將資料表匯出為csv。
輸出的Excel工作表如下所示:
資料庫快速訪問
IronXL API 參考文件
Learn more and share how to merge, unmerge, and work with cells in Excel spreadsheets using the handy IronXL API 參考文件.
IronXL API 參考文件