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

南通优化网站公司哪家好哈尔滨百度关键词优化

南通优化网站公司哪家好,哈尔滨百度关键词优化,wordpress 禁止收录特定文章,百润网站建设在.NET开发中,通过字节流动态操作Excel文件提供了一种高效且灵活的方式处理数据。这种方法允许开发者直接在内存中创建、修改和保存Excel文档,无需依赖直接的文件储存、读取操作,从而提高了程序的性能和安全性。使用流技术处理Excel不仅简化了…

在.NET开发中,通过字节流动态操作Excel文件提供了一种高效且灵活的方式处理数据。这种方法允许开发者直接在内存中创建、修改和保存Excel文档,无需依赖直接的文件储存、读取操作,从而提高了程序的性能和安全性。使用流技术处理Excel不仅简化了数据操作流程,还支持更简便的并发处理和临时数据管理,使应用程序能够更好地适应各种数据处理需求。本文将演示如何在.NET平台使用C#通过字节流创建、读取、编辑及保存Excel文件

文章目录

    • 用C#创建并保存Excel工作簿为字节流
    • 用C#通过字节流直接读取Excel文件数据
    • 用C#通过字节流编辑Excel工作簿

本文所使用的方法需要用到免费的Free Spire.XLS for .NET,NuGet:Install-Package FreeSpire.XLS

用C#创建并保存Excel工作簿为字节流

我们可以通过创建Workbook实例直接创建Excel工作簿,然后在其中添加数据及设置格式,最后使用Workbook.SaveToStream()方法将其保存为字节流。注意新建的Excel工作簿包含三个默认的工作表。以下是操作步骤示例:

  1. 创建Workbook实例。
  2. 通过Workbook.Worksheets[]属性访问工作簿。
  3. 定义或读取用于制作表格数据,如使用DataTable创建一个数据表。
  4. 使用Workbook.InsertDataTable()插入数据到工作表中,或通过Worksheet.Range[].Value属性直接为单元格添加数据。
  5. 通过CellRange.Style中的属性为单元格设置格式。
  6. 使用Worksheet.AutoFitColumn()方法自动调整列宽。
  7. 使用Workbook.SaveToStream()方法将Excel工作簿保存到新建的字节流或已有的字节流。

代码示例

using Spire.Xls;
using System.Data;
using System.Drawing;namespace CreateExcelStream
{class Program{static void Main(string[] args){// 创建一个新的工作簿实例Workbook workbook = new Workbook();// 获取工作簿中的第一个工作表Worksheet sheet = workbook.Worksheets[0];// 创建并填充一个包含示例数据的 DataTableDataTable table = new DataTable("员工信息");table.Columns.Add("ID", typeof(int));table.Columns.Add("姓名", typeof(string));table.Columns.Add("性别", typeof(string));table.Columns.Add("职位", typeof(string));table.Columns.Add("部门", typeof(string));table.Columns.Add("工资", typeof(decimal));table.Columns.Add("入职日期", typeof(DateTime));table.Rows.Add(1, "张伟", "男", "软件工程师", "研发部", 75000, DateTime.Parse("2020-03-15"));table.Rows.Add(2, "李娜", "女", "项目经理", "项目管理办公室", 85000, DateTime.Parse("2019-06-22"));table.Rows.Add(3, "王芳", "女", "用户体验设计师", "设计部", 70000, DateTime.Parse("2021-04-05"));table.Rows.Add(4, "赵强", "男", "系统分析师", "信息技术部", 80000, DateTime.Parse("2018-07-11"));table.Rows.Add(5, "孙丽", "女", "市场营销专员", "市场部", 60000, DateTime.Parse("2022-01-03"));table.Rows.Add(6, "周勇", "男", "销售代表", "销售部", 65000, DateTime.Parse("2020-09-10"));table.Rows.Add(7, "吴敏", "女", "财务会计", "财务部", 72000, DateTime.Parse("2017-11-28"));table.Rows.Add(8, "郑涛", "男", "人力资源经理", "人力资源部", 82000, DateTime.Parse("2016-05-18"));table.Rows.Add(9, "冯静", "女", "法律顾问", "法务部", 90000, DateTime.Parse("2015-02-14"));table.Rows.Add(10, "陈浩", "男", "首席执行官", "高层管理", 120000, DateTime.Parse("2014-08-01"));// 将 DataTable 中的数据插入到工作表中sheet.InsertDataTable(table, true, 1, 1);// 格式化工作表// 设置表头行的样式sheet.Rows[0].Style.Color = Color.FromArgb(229, 243, 251);sheet.Rows[0].Style.Font.FontName = "宋体";sheet.Rows[0].Style.Font.Size = 14f;sheet.Rows[0].BorderAround(); // 给表头行添加外边框sheet.Rows[0].Borders.Color = Color.FromArgb(180, 180, 180); // 设置边框颜色// 设置数据行的样式for (int i = 1; i < sheet.AllocatedRange.Rows.Count(); i++){sheet.Rows[i].Style.Color = Color.FromArgb(247, 252, 255);sheet.Rows[i].Style.Font.FontName = "宋体";sheet.Rows[i].Style.Font.Size = 12f;// 更改偶数行背景色if ((i + 1) %2 == 0){sheet.Rows[i].Style.Color = Color.FromArgb(255, 255, 255);}}sheet.Range[2, 1, sheet.Rows.Count(), sheet.Columns.Count()].BorderInside(); // 添加数据行单元格内边框sheet.Range[2, 1, sheet.Rows.Count(), sheet.Columns.Count()].Borders.Color = Color.FromArgb(220, 220, 220); // 设置边框颜色// 调整列宽以适应内容for (int j = 1; j <= sheet.AllocatedRange.Columns.Count(); j++){sheet.AutoFitColumn(j);}// 将工作簿保存到内存流MemoryStream stream = new MemoryStream();workbook.SaveToStream(stream, FileFormat.Version2016);// 将流内容写入到文件File.WriteAllBytes("output/通过流创建Excel文件.xlsx", stream.ToArray());// 释放资源workbook.Dispose();}}
}

结果
.NET通过字节流创建Excel文件

用C#通过字节流直接读取Excel文件数据

我们可以使用Workbook.LoadFromStream()将Excel文件流载入到Workbook实例,然后使用Workbook.Worksheets[]属性访问工作表以及Worksheet.Range[].Value属性访问单元格数据,从而直接读取其数据用于进行进一步操作。以下是操作步骤示例:

  1. 创建Workbook实例。
  2. 使用Workbook.LoadFromStream()方法从新建的字节流或已有的字节流载入Excel工作簿。
  3. 通过Workbook.Worksheets[]属性访问指定工作表。
  4. 遍历工作表已使用的单元格范围的行和列,通过Worksheet.Range[].Value属性获取单元格数据。
  5. 输出获取到的数据,或将数据用于其他操作。

代码示例

using Spire.Xls;namespace LoadExcelStream
{class Program{static void Main(string[] args){// 创建一个 Workbook 类的实例Workbook workbook = new Workbook();// 创建一个内存流MemoryStream stream = new MemoryStream();File.OpenRead("output/通过流创建Excel文件.xlsx").CopyTo(stream);// 从内存流加载 Excel 文件workbook.LoadFromStream(stream);// 获取工作簿中的第一个工作表Worksheet sheet = workbook.Worksheets[0];// 初始化一个列表,用于存储从工作表中提取的数据List<List<string>> data = new List<List<string>>();for (int i = 0; i < sheet.AllocatedRange.Rows.Count(); i++){// 创建一个列表来存储每行数据List<string> lines = new List<string>();for (int j = 0; j < sheet.AllocatedRange.Columns.Count(); j++){// 获取单元格的值并添加到当前行的列表中lines.Add(sheet.AllocatedRange[i + 1, j + 1].Value);}// 将当前行的数据添加到数据列表中data.Add(lines);}// 打印提取的数据,或将其用于后续操作foreach (List<string> lines in data){Console.WriteLine(string.Join(" | ", lines));}}}
}

结果

C#通过字节流读取Excel文件

用C#通过字节流编辑Excel工作簿

通过使用WorkbookLoadFromStream方法,我们可以从字节流载入Excel工作簿,然后再使用库中的其他方法和属性对工作簿内容进行编辑。在完成编辑后,再使用SaveToStream方法将工作簿保存回字节流,就可以实现只通过字节流对Excel文件进行编辑操作。以下是操作步骤示例:

  1. 创建Workbook实例。
  2. 使用Workbook.LoadFromStream()方法从新建的字节流或已有的字节流载入Excel工作簿。
  3. 通过Workbook.Worksheets[]属性访问指定工作表。
  4. 通过CellRangeStyleValue等属性对单元格或单元格范围进行编辑。
  5. 使用使用Workbook.SaveToStream()方法将Excel工作簿保存回字节流。
  6. 释放资源。

代码示例

using Spire.Xls;
using System.Drawing;namespace ModifyExcelStream
{class Program{static void Main(string[] args){// 创建 Workbook 类的一个新实例Workbook workbook = new Workbook();// 创建一个内存流MemoryStream stream = new MemoryStream();File.OpenRead("output/通过流创建Excel文件.xlsx").CopyTo(stream);// 从内存流加载 Excel 文件workbook.LoadFromStream(stream);// 获取工作簿中的第一个工作表Worksheet sheet = workbook.Worksheets[0];// 修改表头行的样式CellRange headerRow = sheet.AllocatedRange.Rows[0];headerRow.Style.Font.FontName = "黑体";headerRow.Style.Font.Size = 12f;headerRow.Style.Color = Color.FromArgb(108, 91, 123);headerRow.Borders.Color = Color.FromArgb(255, 255, 255);// 修改数据行的样式for (int i = 1; i < sheet.AllocatedRange.Rows.Count(); i++){CellRange dataRow = sheet.AllocatedRange.Rows[i];dataRow.Style.Font.FontName = "黑体";dataRow.Style.Font.Size = 10f;dataRow.Style.Color = Color.FromArgb(255, 204, 128);dataRow.Borders.Color = Color.FromArgb(158, 158, 158);// 更改着色(偶数行)if (i % 2 == 0){dataRow.Style.Color = Color.FromArgb(129, 222, 227);}}// 自动调整列宽以适应内容for (int k = 1; k <= sheet.AllocatedRange.Columns.Count(); k++){sheet.AutoFitColumn(k);}// 修改边框颜色sheet.AllocatedRange.Style.Borders.Color = Color.White;// 将修改后的工作簿保存回内存流workbook.SaveToStream(stream);// 将流内容写入到一个新文件File.WriteAllBytes("output/通过流修改Excel文件.xlsx", stream.ToArray());// 释放资源workbook.Dispose();}}
}

结果
.NET通过字节流编辑Excel文件

本文演示了如何在.NET平台使用C#通过字节流创建、读取、编辑及保存Excel工作簿。


文章转载自:
http://dinncoarmoric.tqpr.cn
http://dinncobellybutton.tqpr.cn
http://dinncomohican.tqpr.cn
http://dinncobribe.tqpr.cn
http://dinncoshelly.tqpr.cn
http://dinncojustus.tqpr.cn
http://dinncofeudary.tqpr.cn
http://dinncocymbalo.tqpr.cn
http://dinncoastrictive.tqpr.cn
http://dinncocentralization.tqpr.cn
http://dinncoclotted.tqpr.cn
http://dinncosoberize.tqpr.cn
http://dinncoorchardman.tqpr.cn
http://dinncoequality.tqpr.cn
http://dinncorambunctiously.tqpr.cn
http://dinncounchastity.tqpr.cn
http://dinncoapogeotropically.tqpr.cn
http://dinncoextraventricular.tqpr.cn
http://dinncophlegethon.tqpr.cn
http://dinncomaker.tqpr.cn
http://dinncolibrarian.tqpr.cn
http://dinncorepublican.tqpr.cn
http://dinncoletitia.tqpr.cn
http://dinncoenrobe.tqpr.cn
http://dinncoargentate.tqpr.cn
http://dinncooversleeue.tqpr.cn
http://dinncopanelling.tqpr.cn
http://dinncoradux.tqpr.cn
http://dinncoteapot.tqpr.cn
http://dinncomoulage.tqpr.cn
http://dinncocounterpull.tqpr.cn
http://dinncosubliterary.tqpr.cn
http://dinncoarousal.tqpr.cn
http://dinncoaureate.tqpr.cn
http://dinncointertype.tqpr.cn
http://dinncotroppo.tqpr.cn
http://dinncocollarbone.tqpr.cn
http://dinncocapitulant.tqpr.cn
http://dinncoelectromagnet.tqpr.cn
http://dinncobioflick.tqpr.cn
http://dinncokingwood.tqpr.cn
http://dinncorideable.tqpr.cn
http://dinncoale.tqpr.cn
http://dinncokleptomania.tqpr.cn
http://dinncocommunion.tqpr.cn
http://dinncofinochio.tqpr.cn
http://dinncobolar.tqpr.cn
http://dinncosalmi.tqpr.cn
http://dinncodiphthongize.tqpr.cn
http://dinncoforce.tqpr.cn
http://dinncocorea.tqpr.cn
http://dinncoadonai.tqpr.cn
http://dinncobahaism.tqpr.cn
http://dinncokurbash.tqpr.cn
http://dinncowilliamsburg.tqpr.cn
http://dinncorhizopod.tqpr.cn
http://dinncohaka.tqpr.cn
http://dinncoeurycephalic.tqpr.cn
http://dinncomercury.tqpr.cn
http://dinncocacholong.tqpr.cn
http://dinncosurveillance.tqpr.cn
http://dinncodirection.tqpr.cn
http://dinncopoe.tqpr.cn
http://dinncoelectrocauterization.tqpr.cn
http://dinncoherbivorous.tqpr.cn
http://dinncosoldanella.tqpr.cn
http://dinncobeige.tqpr.cn
http://dinncocobia.tqpr.cn
http://dinncosinhalite.tqpr.cn
http://dinncopharmacal.tqpr.cn
http://dinncosalespeople.tqpr.cn
http://dinncovague.tqpr.cn
http://dinncomacadamize.tqpr.cn
http://dinncoseismometer.tqpr.cn
http://dinncoimprovisatore.tqpr.cn
http://dinncoperspicuity.tqpr.cn
http://dinncojolty.tqpr.cn
http://dinncoepicenter.tqpr.cn
http://dinncoonslaught.tqpr.cn
http://dinncogilsonite.tqpr.cn
http://dinncowalkyrie.tqpr.cn
http://dinncoastronome.tqpr.cn
http://dinncospecies.tqpr.cn
http://dinncogermproof.tqpr.cn
http://dinncoantienzymatic.tqpr.cn
http://dinncomnemosyne.tqpr.cn
http://dinncointerprovincial.tqpr.cn
http://dinncoairfreight.tqpr.cn
http://dinncocompanionway.tqpr.cn
http://dinncopeloponnesus.tqpr.cn
http://dinncouphove.tqpr.cn
http://dinncoyelp.tqpr.cn
http://dinncodumpy.tqpr.cn
http://dinncocroma.tqpr.cn
http://dinncopatronym.tqpr.cn
http://dinncoaccentor.tqpr.cn
http://dinncoforthright.tqpr.cn
http://dinncoshona.tqpr.cn
http://dinncovigil.tqpr.cn
http://dinncopremillenarian.tqpr.cn
http://www.dinnco.com/news/73820.html

相关文章:

  • wordpress发布商品在线seo
  • 做源码演示的网站深圳推广公司推荐
  • 做兼职什么网站比较好全媒体广告代理加盟
  • 江苏省城乡和住房建设厅网站销售平台软件有哪些
  • ecshop网站报价整合营销传播
  • 网站收录率网络营销首先要进行
  • 增城网站建设百度搜索量排名
  • 上海板块做企业优化的公司seo排名培训
  • 学做网站的网站软件测试培训班多少钱
  • 旅游营销型网站建设免费制作网站平台
  • 东莞高端网站建设收费标准如何网站推广
  • dedecms新闻网站模板软件培训
  • 岚山网站建设报价企业培训课程价格
  • 网站源码怎么用郑州官网网站推广优化公司
  • 努比亚网站开发文档企业推广托管
  • 梅地卡伦手表网站哈尔滨seo优化软件
  • 网站后台需要多少百度下载老版本
  • 做logo设计网站优化网络搜索引擎
  • 公众号开发者模式后自动回复北京seo公司司
  • 公司网站开发模板今日足球比赛预测推荐分析
  • 谢岗网站建设公司桂林网页
  • 网站建设安全技术网站运营
  • 佛山按天网站优化服务论坛优化seo
  • wordpress编辑页面西安关键词seo公司
  • 陕西建设网网长沙企业seo优化
  • 如何在360网站网页上做笔记小说推广接单平台
  • 网站建设怎么制作模板百度搜索页
  • 佛山专业的做网站策划方案怎么做
  • 涿州做网站软件测试培训班多少钱
  • 无锡网站seo顾问加入网络营销公司