当前位置: 首页 > wzjs >正文

学校网站建设需求分析网站建设的整体流程有哪些

学校网站建设需求分析,网站建设的整体流程有哪些,公众号自助下单平台,曲阜网站建设哪家好在 C# 中生成 Excel 文件是一项常见任务,广泛应用于报表系统构建、结构化数据导出及 Excel 自动化流程开发。无论你是在构建桌面工具、Web API,还是跨平台应用,通过代码生成 .xlsx 文件,都能显著提升数据处理和交互效率。 本文将…

在 C# 中生成 Excel 文件是一项常见任务,广泛应用于报表系统构建、结构化数据导出及 Excel 自动化流程开发。无论你是在构建桌面工具、Web API,还是跨平台应用,通过代码生成 .xlsx 文件,都能显著提升数据处理和交互效率。

本文将介绍如何使用 Spire.XLS for .NET(一款独立的 Excel 操作库,支持国产化信创)在各类 .NET 项目中生成 Excel 文件,包括 .NET 桌面程序、ASP.NET Web 服务以及后台自动化任务。内容涵盖从零新建 Excel 工作簿、导出 DataTable、服务器端生成文件、设置格式与公式等常见功能,并配有详细的代码示例。

Spire.XLS for .NET试用下载

环境准备

Spire.XLS for .NET 是一款轻量级 Excel 操作库,可完全通过代码创建和操作 .xls 或 .xlsx 文件,无需安装 Office,也不依赖 COM 组件,非常适合部署于 Web 服务器、微服务或云平台应用。

你可以通过 NuGet 安装该库:

Install-Package Spire.XLS

用 C# 新建 Excel 文件

在处理配置数据、小规模内容或生成模板时,直接通过 C# 新建 Excel 文件能带来极高的控制力与灵活性。

以下示例展示了如何新建一个包含文本与数值的工作表,并设置列宽和样式:

using Spire.Xls;// 创建一个新的工作簿和工作表
Workbook workbook = new Workbook();
Worksheet sheet = workbook.Worksheets[0];
sheet.Name = "汇总"; // 设置工作表名称为“汇总”// 填充表头和数据
// 通过单元格名称访问
sheet.Range["A1"].Text = "员工";
sheet.Range["B1"].Text = "部门";
sheet.Range["C1"].Text = "薪资";// 通过行列索引访问单元格
sheet.Range[2, 1].Text = "小丽";
sheet.Range[2, 2].Text = "人事部";
sheet.Range[2, 3].NumberValue = 6500;sheet.Range[3, 1].Text = "小明";
sheet.Range[3, 2].Text = "信息部";
sheet.Range[3, 3].NumberValue = 7200;// 应用样式
CellStyle headerStyle = workbook.Styles.Add("Header");
headerStyle.Font.IsBold = true; // 设置加粗字体
sheet.Range["A1:C1"].Style = headerStyle;// 自动调整列宽
sheet.AllocatedRange.AutoFitColumns();// 保存文件
workbook.SaveToFile("BasicExcel.xlsx", FileFormat.Version2016);
workbook.Dispose();

生成的 Excel 文件:

示例:C# 新建的包含员工信息的 Excel 工作表

该方法无需安装 Office 即可直接新建 Excel 文件,适用于数据导出或配置生成任务。

用 C# 导出 DataTable 到 Excel

在处理数据库结果或 API 返回数据时,将 DataTable 导出为 Excel 文件是一项常见需求。Spire.XLS 支持快速加载结构化数据并自动生成列头,无需手动遍历行列。

以下示例展示如何将 DataTable 写入工作表并导出为 Excel 文件:

using System.Data;
using Spire.Xls;// 创建一个模拟的数据表
DataTable dt = new DataTable("产品清单");
dt.Columns.Add("产品名称", typeof(string));
dt.Columns.Add("价格", typeof(double));
dt.Columns.Add("库存", typeof(int));// 添加数据行(中文)
dt.Rows.Add("笔记本电脑", 1299.99, 20);
dt.Rows.Add("显示器", 199.5, 50);
dt.Rows.Add("鼠标", 25.75, 150);// 导入到 Excel
Workbook workbook = new Workbook();
Worksheet sheet = workbook.Worksheets[0];
sheet.Name = "库存报告";
sheet.InsertDataTable(dt, true, 1, 1); // 从第1行第1列插入,并包含表头// 自动调整列宽
sheet.AllocatedRange.AutoFitColumns();// 保存文件
workbook.SaveToFile("库存报表.xlsx", FileFormat.Version2016);
workbook.Dispose();

导出的 Excel 文件:

示例:将 DataTable 导出为 Excel 文件后的工作表预览

这种方式适合生成库存清单、业务报表和数据分析结果,无需使用 Excel 或 COM 自动化。

用 C# 设置 Excel 表格格式与公式

为了提升 Excel 报表的可读性与专业性,除了写入原始数据,还可以通过 C# 设置单元格样式、边框、字体颜色、数字格式,以及插入 Excel 原生公式。

以下示例展示如何使用 Spire.XLS 设置标题样式、货币格式、计算公式及交替行颜色:

using Spire.Xls;
using System.Drawing;Workbook workbook = new Workbook();
Worksheet sheet = workbook.Worksheets[0];
sheet.Name = "销售报表"; // 设置工作表名称// 设置表头
sheet.Range["A1"].Text = "商品";
sheet.Range["B1"].Text = "单价";
sheet.Range["C1"].Text = "数量";
sheet.Range["D1"].Text = "总价";// 添加示例数据(中文)
string[,] items = {{ "圆珠笔", "1.5", "10" },{ "笔记本", "3.75", "5" },{ "橡皮擦", "0.99", "20" }
};for (int i = 0; i < items.GetLength(0); i++)
{int row = i + 2;sheet.Range[$"A{row}"].Text = items[i, 0];                          // 商品名称sheet.Range[$"B{row}"].NumberValue = double.Parse(items[i, 1]);   // 单价sheet.Range[$"C{row}"].NumberValue = double.Parse(items[i, 2]);   // 数量sheet.Range[$"D{row}"].Formula = $"=B{row}*C{row}";               // 总价(公式计算)
}// 样式:表头行
CellStyle headerStyle = workbook.Styles.Add("HeaderStyle");
headerStyle.Font.IsBold = true;
headerStyle.Font.Color = Color.White;
headerStyle.Font.Size = 12;
headerStyle.KnownColor = ExcelColors.DarkBlue;
headerStyle.HorizontalAlignment = HorizontalAlignType.Center;
headerStyle.VerticalAlignment = VerticalAlignType.Center;
headerStyle.Borders[BordersLineType.EdgeTop].LineStyle = LineStyleType.Thick;
headerStyle.Borders[BordersLineType.EdgeLeft].LineStyle = LineStyleType.Thick;
sheet.Range["A1:D1"].Style = headerStyle;
sheet.Range["A1:D1"].RowHeight = 22;// 样式:数据单元格
CellStyle dataStyle = workbook.Styles.Add("DataStyle");
dataStyle.NumberFormat = "\"¥\"#,##0.00"; // 显示人民币符号
dataStyle.HorizontalAlignment = HorizontalAlignType.Right;
dataStyle.VerticalAlignment = VerticalAlignType.Center;
dataStyle.Borders[BordersLineType.EdgeLeft].LineStyle = LineStyleType.Thin;
dataStyle.Borders[BordersLineType.EdgeBottom].LineStyle = LineStyleType.Thin;// 应用数据样式到单价、数量、总价列
sheet.Range["B2:D4"].Style = dataStyle;// 可选:交替行底色增强可读性
for (int r = 2; r <= 4; r++)
{if (r % 2 == 0)sheet.Range[$"A{r}:D{r}"].Style.KnownColor = ExcelColors.LightYellow;
}// 设置列宽和行高
sheet.AllocatedRange.ColumnWidth = 10;
sheet.AllocatedRange.RowHeight = 20;// 保存文件
workbook.SaveToFile("样式化报表.xlsx", FileFormat.Version2016);
workbook.Dispose();

生成的 Excel 文件:

示例:包含格式和公式的 Excel 报表文件预览

这种方法适合生成销售报表、财务记录、采购清单等需要格式与计算支持的 Excel 文档。

你还可以进一步应用百分比、自定义数字格式等样式。

在 ASP.NET Core 中生成 Excel 文件

在 ASP.NET Core 应用中(例如 .NET 6/7/8),动态导出 Excel 报表是后台管理系统和数据平台中的常见需求。

以下示例展示了如何在 Razor Pages 页面中生成 Excel 文件并通过浏览器下载,无需将文件保存到磁盘:

using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Spire.Xls;
using System.Data;public class ExportModel : PageModel
{public IActionResult OnGet(){// 模拟专业数据:项目进度报告DataTable dt = new DataTable("项目进度");dt.Columns.Add("项目编号", typeof(string));dt.Columns.Add("项目名称", typeof(string));dt.Columns.Add("负责人", typeof(string));dt.Columns.Add("开始日期", typeof(DateTime));dt.Columns.Add("计划完成", typeof(DateTime));dt.Columns.Add("当前进度", typeof(string));dt.Columns.Add("状态", typeof(string));dt.Rows.Add("PRJ001", "智能仓储系统", "张强", new DateTime(2024, 3, 1), new DateTime(2024, 9, 30), "65%", "进行中");dt.Rows.Add("PRJ002", "企业门户网站升级", "李华", new DateTime(2024, 5, 10), new DateTime(2024, 7, 15), "100%", "已完成");dt.Rows.Add("PRJ003", "数据治理平台建设", "王敏", new DateTime(2024, 6, 1), new DateTime(2024, 12, 31), "30%", "延迟");// 创建 Excel 工作簿和工作表Workbook workbook = new Workbook();Worksheet sheet = workbook.Worksheets[0];sheet.Name = "项目进度报告";// 插入数据表(包含表头)sheet.InsertDataTable(dt, true, 1, 1);// 表头样式CellStyle headerStyle = workbook.Styles.Add("HeaderStyle");headerStyle.Font.IsBold = true;headerStyle.HorizontalAlignment = HorizontalAlignType.Center;headerStyle.VerticalAlignment = VerticalAlignType.Center;sheet.Rows[0].Style = headerStyle;// 自动调整列宽sheet.AllocatedRange.AutoFitColumns();// 保存为内存流using var stream = new MemoryStream();workbook.SaveToStream(stream, FileFormat.Version2016);stream.Position = 0;// 返回文件return File(stream.ToArray(),"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","项目进度报告.xlsx");}
}

导出的 Excel 文件:

ASP.NET Core 页面中生成并下载的 Excel 项目进度报表

该方法适用于需要服务端生成并下载 Excel 文件的 Web 场景,支持:

  • ✅ ASP.NET Core 3.1、.NET 5、.NET 6、.NET 7、.NET 8
  • ✅ Razor Pages、MVC 控制器、API 接口等类型项目

在 ASP.NET Web Forms 中生成 Excel 文件

对于使用经典 ASP.NET Web Forms 的项目,也可以通过 Spire.XLS 实现在浏览器中即时下载 Excel 文件,而无需中间文件或 Office 安装。

以下示例展示了如何在 Web Forms 页面中使用内存流创建并返回 Excel 文件:

using Spire.Xls;
using System;
using System.IO;namespace YourNamespace
{public partial class Default : System.Web.UI.Page{protected void btnExport_Click(object sender, EventArgs e){// 创建 Excel 文件并准备导出下载Workbook workbook = new Workbook();Worksheet sheet = workbook.Worksheets[0];sheet.Name = "用户信息";// 表头string[] headers = { "编号", "姓名", "部门", "入职日期" };for (int i = 0; i < headers.Length; i++){sheet.Range[1, i + 1].Text = headers[i];sheet.Range[1, i + 1].Style.Font.IsBold = true;}// 示例数据(中文)string[,] data = {{ "U001", "张美", "人事部", "2023-01-15" },{ "U002", "李强", "信息部", "2022-11-03" }};// 填充数据for (int r = 0; r < data.GetLength(0); r++)for (int c = 0; c < data.GetLength(1); c++)sheet.Range[r + 2, c + 1].Text = data[r, c];// 自动调整列宽sheet.AllocatedRange.AutoFitColumns();// 导出并触发浏览器下载using (MemoryStream ms = new MemoryStream()){workbook.SaveToStream(ms, FileFormat.Version2016);byte[] bytes = ms.ToArray();Response.Clear();Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";Response.AddHeader("Content-Disposition", "attachment; filename=用户信息.xlsx");Response.BinaryWrite(bytes);Response.End();}}}
}

导出的 Excel 文件:

ASP.NET Web Forms 中生成并导出的用户信息 Excel 文件

该方式适合用于后台管理系统、内部工具或企业内部门户,实现便捷的数据导出功能。

总结

使用 Spire.XLS for .NET,你可以轻松地在 C# 中生成 Excel 文件,覆盖桌面、Web 和后台任务等多种使用场景。不论是导出 DataTable、创建格式化报表,还是自动生成计算内容,本指南均提供了完整的示例与操作步骤。

http://www.dtcms.com/wzjs/387431.html

相关文章:

  • 我的企业邮箱在哪里看seo是如何做优化的
  • 绵阳营销型网站建设卡点视频免费制作软件
  • 苏州新区网站制作公司百度推广广告公司
  • 广西网站建设智能优化镇江网站建设
  • 网站开发毕业设计源码百度地图推广怎么收费标准
  • 中职网站建设白银网站seo
  • 做交互式的网站怎么做重庆seo黄智
  • wp如何做双语网站西安整站优化
  • 哪家网站优化公司好广州seo网站推广
  • 企业网站图片渐变效果怎么做网络营销与直播电商专升本
  • 个人建设网站服务器怎么解决天津做网站的
  • 做面食专业网站浙江网站建设平台
  • 实时网站制作营销策划的重要性
  • 免费免费网站模板下载关键词采集网站
  • 湘西做网站厦门seo关键词优化
  • 网站建设与开发做什么一天赚2000加微信
  • 哪里能做网站中国seo关键词优化工具
  • 简约、时尚、高端 网站建设成都百度推广代理公司
  • 建设一个地方门户网站google ads 推广
  • 设计网站建设图片长尾关键词挖掘爱站网
  • 以营销型网站为主要营销方式的案例今日新闻热点
  • 单县网站建设网络营销策划书模板
  • 东西湖做网站seo做关键词怎么收费的
  • 常州网站搭建广告优化师培训
  • 苏州做网站价格百度seo排名360
  • 页面设计的标准有哪些推送者seo
  • 网站建设的用途是什么一个新产品策划方案
  • 怎么学做电商宁波seo教程
  • 公司官网登录入口网站seo站外优化
  • 给别人做违法网站今日国际军事新闻