C#使用Spire.XLS for .NET將DataTable寫(xiě)入Excel的具體步驟
引言
在日常開(kāi)發(fā)中,我們經(jīng)常需要將 DataTable 中的數(shù)據(jù)導(dǎo)出到 Excel 文件中,方便用戶查看或進(jìn)行后續(xù)分析。本文將介紹如何使用 Spire.XLS for .NET 實(shí)現(xiàn)這一功能,包括:
- 普通寫(xiě)入:直接將 DataTable 寫(xiě)入 Excel。
- 格式設(shè)置:對(duì)導(dǎo)出的 Excel 進(jìn)行樣式美化。
一、準(zhǔn)備工作
首先,在 C# 項(xiàng)目中引用 Spire.XLS for .NET 程序集(Spire.Xls.dll)。
引用完成后,即可開(kāi)始編寫(xiě)代碼。
二、創(chuàng)建測(cè)試用 DataTable
在示例中,我們先構(gòu)造一個(gè)簡(jiǎn)單的 DataTable 用于演示。
using System;
using System.Data;
public static DataTable GetSampleData()
{
DataTable dt = new DataTable();
dt.Columns.Add("編號(hào)", typeof(int));
dt.Columns.Add("姓名", typeof(string));
dt.Columns.Add("成績(jī)", typeof(double));
dt.Rows.Add(1, "張三", 88.5);
dt.Rows.Add(2, "李四", 92.0);
dt.Rows.Add(3, "王五", 76.3);
return dt;
}
三、普通寫(xiě)入 DataTable 到 Excel
普通寫(xiě)入是最簡(jiǎn)單的方式,不涉及復(fù)雜格式,只是把數(shù)據(jù)原封不動(dòng)寫(xiě)入到 Excel 中。
using Spire.Xls;
using System.Data;
class Program
{
static void Main()
{
// 獲取示例數(shù)據(jù)
DataTable dataTable = GetSampleData();
// 創(chuàng)建 Workbook
Workbook workbook = new Workbook();
Worksheet sheet = workbook.Worksheets[0];
// 將 DataTable 寫(xiě)入工作表(true 表示包含列名)
sheet.InsertDataTable(dataTable, true, 1, 1);
// 保存 Excel 文件
workbook.SaveToFile("普通寫(xiě)入.xlsx", ExcelVersion.Version2016);
}
}
說(shuō)明:
InsertDataTable方法可將 DataTable 快速寫(xiě)入 Excel。- 第三個(gè)參數(shù)
true表示首行寫(xiě)入列名。
運(yùn)行后即可得到一個(gè)簡(jiǎn)單的 Excel 文件,第一行是列標(biāo)題,下面是對(duì)應(yīng)的數(shù)據(jù)。
四、帶格式設(shè)置的寫(xiě)入
在很多實(shí)際場(chǎng)景中,我們希望導(dǎo)出的 Excel 更易讀,比如標(biāo)題加粗、列寬自動(dòng)適應(yīng)、邊框等。
using Spire.Xls;
using System.Data;
using System.Drawing;
class Program
{
static void Main()
{
DataTable dataTable = GetSampleData();
Workbook workbook = new Workbook();
Worksheet sheet = workbook.Worksheets[0];
// 寫(xiě)入數(shù)據(jù)
sheet.InsertDataTable(dataTable, true, 1, 1);
// 獲取標(biāo)題行范圍
CellRange titleRange = sheet.Range[1, 1, 1, dataTable.Columns.Count];
titleRange.Style.Font.IsBold = true; // 加粗
titleRange.Style.HorizontalAlignment = HorizontalAlignType.Center; // 居中
titleRange.Style.Color = Color.LightGray; // 背景色
// 給所有單元格加邊框
CellRange allRange = sheet.Range[1, 1, dataTable.Rows.Count + 1, dataTable.Columns.Count];
allRange.BorderInside(LineStyleType.Thin, Color.Black);
allRange.BorderAround(LineStyleType.Thin, Color.Black);
// 自動(dòng)調(diào)整列寬
sheet.AllocatedRange.AutoFitColumns();
workbook.SaveToFile("格式化寫(xiě)入.xlsx", ExcelVersion.Version2016);
}
}
格式說(shuō)明:
- 標(biāo)題樣式:加粗、居中、背景色。
- 邊框:內(nèi)外邊框統(tǒng)一設(shè)置為黑色細(xì)線。
- 列寬:
AutoFitColumns()自動(dòng)調(diào)整列寬以適應(yīng)內(nèi)容。
運(yùn)行后,生成的 Excel 文件不僅包含數(shù)據(jù),還具有更美觀的格式,方便閱讀。
五、總結(jié)
本文介紹了如何使用 Spire.XLS for .NET 將 DataTable 寫(xiě)入 Excel 文件:
- 普通寫(xiě)入:簡(jiǎn)單快速,適合臨時(shí)數(shù)據(jù)導(dǎo)出。
- 格式化寫(xiě)入:通過(guò)調(diào)整字體、顏色、邊框和列寬,讓數(shù)據(jù)更加美觀易讀。
無(wú)論是普通導(dǎo)出還是格式化處理,Spire.XLS for .NET 都提供了簡(jiǎn)潔易用的 API,幫助開(kāi)發(fā)者高效完成 Excel 生成任務(wù)。
到此這篇關(guān)于C#使用Spire.XLS for .NET將DataTable寫(xiě)入Excel的具體步驟的文章就介紹到這了,更多相關(guān)C# DataTable寫(xiě)入Excel內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C#實(shí)現(xiàn)判斷字符串中是否包含中文的方法
這篇文章主要介紹了C#實(shí)現(xiàn)判斷字符串中是否包含中文的方法,非常實(shí)用的功能,需要的朋友可以參考下2014-08-08
C#實(shí)現(xiàn)的Windows剪貼板監(jiān)視器功能實(shí)例【附demo源碼下載】
這篇文章主要介紹了C#實(shí)現(xiàn)的Windows剪貼板監(jiān)視器功能,結(jié)合實(shí)例形式分析了C#實(shí)現(xiàn)剪貼板監(jiān)視功能所涉及的相關(guān)Windows API函數(shù)與使用技巧,需要的朋友可以參考下2016-08-08
C# Dynamic之:ExpandoObject,DynamicObject,DynamicMetaOb的應(yīng)用(下)
本篇文章是對(duì)C#中ExpandoObject,DynamicObject,DynamicMetaOb的應(yīng)用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05

