在实际环境中测试
在生产中测试无水印。
随时随地为您服务。
以下文章将演示如何将 C# 数据集转换为 CSV 文件。
IronXL在处理电子表格(无论是 CSV 格式还是 Excel 文件)时,"CSV "是一个很好的解决方案。 IronXL 可免费用于开发,使用方便,功能广泛,可处理任何类型的电子表格。 它具有安全性和高性能。 在继续前行之前,我们先来简单介绍一下 IronXL。
IronXL 是一个铁软件库,允许 C# 开发人员读取、生成和编辑 Excel(和其他电子表格文件)在 .NET 应用程序和网站中使用。
IronXL.Excel 是用 C# 和 .NET 处理 Excel 和其他电子表格文件的一种快速简便的方法。 IronXL 可以很好地与 .NET Framework、.NET Core 和 Azure 配合使用,而无需使用 Office Excel Interopm。 IronXL 也不要求安装 Microsoft Office 或包含任何其他此类依赖项。
让我们开始创建并编写代码,为数据集创建 CSV 文件。
打开 Visual Studio IDE;建议使用 Visual Studio 的最新版本,但也可以根据自己的偏好使用任何版本。 请注意,创建新项目的步骤可能因版本而异。
Visual Studio 的启动窗口
单击创建新项目。 新窗口将如下所示。
在Visual Studio中创建一个新项目
从列表中选择您喜欢的项目模板。单击下一步按钮,新窗口将如下所示。
配置新创建的项目
命名您的项目,选择其位置,然后按下一步按钮。 新窗口将如下所示。
选择 .NET Framework 版本
选择目标 .NET Framework。 您可以选择任何适合您需要的 .NET Framework,因为 IronXL 支持所有 .NET Framework。 本教程将使用 .NET 7。单击创建按钮,将创建一个新项目,如下图所示。
在 Visual Studio 中创建一个新的控制台应用程序
现在,安装 IronXL NuGet 包,以便在此应用程序中使用它。
打开 NuGet 包管理器控制台,输入以下命令。
Install-Package IronXL.Excel
"(《世界人权宣言》)NuGet 软件包如下图所示,您将安装并随时可以使用".NET "和 "Node.js"。
IronXL 软件包及其依赖包的安装
现在,让我们用 C# 编写一些将数据集转换为 CSV 文件的代码。
本例将从 SQL 服务器数据库中填充数据。 从 SQL DB 获取数据集后,我们将使用这些输入数据创建 CSV 文件。
第一步是从 SQL 中填充数据,但您也可以使用任何您喜欢的数据源。
本教程使用以下数据:
使用示例数据创建新数据库
以下是创建样本数据的 SQL 脚本:
USE Test_DB
Create Table STUDENT_DATA
(
REG_NUM INT PRIMARY KEY,
FIRST_NAME VARCHAR(30),
LAST_NAME VARCHAR(30),
CLASS VARCHAR(5),
CONTACT_NUM VARCHAR(15)
);
INSERT INTO STUDENT_DATA
VALUES
(123, 'JHON', 'SMITH', '2', '(223) 444-1234'),
(124, 'THOMAS', 'CHARLES', '2', '(332) 555-1235'),
(125, 'WILLIAM', 'RICHARD', '2', '(432) 666-1236'),
(126, 'JAMES', 'BOND', '2', '(543) 777-1237'),
(127, 'CRISTOPHER', 'MICHAL', '2', '(555) 999-1238'),
(128, 'DONALD', 'MARK', '2', '(777) 888-1239');
以下 C# 代码用于将数据表导出为 CSV 文件。
public static DataTable getData()
{
string connString = @"server=DESKTOP-NIP3TOE\SQLEXPRESS; Database=Test_DB; Integrated Security=True;";
string query = "select * from STUDENT_DATA";
try
{
SqlConnection conn = new SqlConnection(connString);
SqlCommand cmd = new SqlCommand(query, conn);
conn.Open();
// create data adapter
SqlDataAdapter da = new SqlDataAdapter(cmd);
// this will query your database and return the result to your datatable
DataTable dt = new DataTable();
da.Fill(dt);
da.Dispose();
return dt;
} catch(Exception)
{
throw;
}
}
static void Main(string [] args)
{
DataTable table = getData();
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
wb.Metadata.Author = "JOHN";
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;
foreach (DataRow row in table.Rows)
{
ws ["A" + (rowCount)].Value = row [0].ToString();
ws ["B" + (rowCount)].Value = row [1].ToString();
ws ["C" + (rowCount)].Value = row [2].ToString();
ws ["D" + (rowCount)].Value = row [3].ToString();
ws ["E" + (rowCount)].Value = row [4].ToString();
rowCount++;
}
wb.SaveAsCsv(@"D:\Tutorial Project\Save_DataTable_CSV.csv"); //
}
public static DataTable getData()
{
string connString = @"server=DESKTOP-NIP3TOE\SQLEXPRESS; Database=Test_DB; Integrated Security=True;";
string query = "select * from STUDENT_DATA";
try
{
SqlConnection conn = new SqlConnection(connString);
SqlCommand cmd = new SqlCommand(query, conn);
conn.Open();
// create data adapter
SqlDataAdapter da = new SqlDataAdapter(cmd);
// this will query your database and return the result to your datatable
DataTable dt = new DataTable();
da.Fill(dt);
da.Dispose();
return dt;
} catch(Exception)
{
throw;
}
}
static void Main(string [] args)
{
DataTable table = getData();
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
wb.Metadata.Author = "JOHN";
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;
foreach (DataRow row in table.Rows)
{
ws ["A" + (rowCount)].Value = row [0].ToString();
ws ["B" + (rowCount)].Value = row [1].ToString();
ws ["C" + (rowCount)].Value = row [2].ToString();
ws ["D" + (rowCount)].Value = row [3].ToString();
ws ["E" + (rowCount)].Value = row [4].ToString();
rowCount++;
}
wb.SaveAsCsv(@"D:\Tutorial Project\Save_DataTable_CSV.csv"); //
}
Public Shared Function getData() As DataTable
Dim connString As String = "server=DESKTOP-NIP3TOE\SQLEXPRESS; Database=Test_DB; Integrated Security=True;"
Dim query As String = "select * from STUDENT_DATA"
Try
Dim conn As New SqlConnection(connString)
Dim cmd As New SqlCommand(query, conn)
conn.Open()
' create data adapter
Dim da As New SqlDataAdapter(cmd)
' this will query your database and return the result to your datatable
Dim dt As New DataTable()
da.Fill(dt)
da.Dispose()
Return dt
Catch e1 As Exception
Throw
End Try
End Function
Shared Sub Main(ByVal args() As String)
Dim table As DataTable = getData()
Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
wb.Metadata.Author = "JOHN"
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()
ws ("B" & (rowCount)).Value = row (1).ToString()
ws ("C" & (rowCount)).Value = row (2).ToString()
ws ("D" & (rowCount)).Value = row (3).ToString()
ws ("E" & (rowCount)).Value = row (4).ToString()
rowCount += 1
Next row
wb.SaveAsCsv("D:\Tutorial Project\Save_DataTable_CSV.csv")
End Sub
方法 getData()如前所述,
将从 SQL Server 数据库中检索数据。
在主要功能中,它将创建一个工作簿然后使用 IronXL 创建一个工作表.
在一个 for
循环中,数据将被填充到给定工作表的行中。
然后,使用保存为 Csv功能。
该程序生成的 CSV 文件如下:
CSV 输出文件
显然,CSV 文件是正确生成的,并且与所提供的输入一致。
本文演示了如何用 C# 从数据集创建 CSV 文件。 该库还可以使用 C# 阅读 CSV 文件. 从 SQL Server 数据库中填充数据集,并通过三个步骤创建 CSV 文件:
从 SQL Server 获取数据。
将数据填充到数据表中。
根据该数据表创建 CSV 文件。
使用 IronXL for .NET 在 .NET 7 中创建 CSV 文件非常简单,如上图所示。 由于程序是用 IronXL for .NET 7 编写的,因此性能出众。 IronXL.Excel 还提供其他实用功能,如创建、读取和操作 Excel 文件。 有关详细信息,请访问官方文件.
此外,IronPDF 还为开发人员提供了以下方法将 PDF 文档渲染为图像和提取文本和内容来自 PDF。 此外,IronPDF 还能够渲染图PDF 格式、添加条形码, 利用密码提高安全性编程。
IronXL 的免费版本用于开发目的。 要在生产中部署应用程序,请获得免费试用版本或商业许可. IronXL 隶属于Iron Suite该项目包括五个库:.NET、Java、Python 或 Node.js:
IronXL今天,我们就来探讨这个问题。
IronPDF用于生成、阅读和处理 PDF 文件
3.IronOCR用于从图像中提取文本
4.IronBarcode用于读取和生成 BarCode
5.IronWebScraper用于从网站中提取结构数据。
如果一起购买,您只需花两个产品的价格即可获得所有这些产品。