如何使用C#将数据表转换为CSV
您可以通过使用IronXL将现有数据表转换为CSV,仅需几个步骤即可将数据表导出为CSV。 本文旨在快速向您展示一个例子。
如何用 C# 将 DataTable 转换为 CSV
- 下载并安装将 DataTable 转换为 CSV 的 C# 库
- 利用
数据表
类来存储新数据 - 创建新电子表格或导入现有电子表格
- 循环查看表格行,并相应填充工作表中的单元格
- 导出为 CSV 文件
保存为 Csv
C# 函数
步骤 1
1. 添加 IronXL Free
在您的应用程序中使用 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 工作表如下所示: