【.net core 通过miniexcel库将Excel文件内容分类输出到不同的Excel中】

2023-10-13 05:20

本文主要是介绍【.net core 通过miniexcel库将Excel文件内容分类输出到不同的Excel中】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 MiniExcel

简单、高效避免OOM的.NET处理Excel工具。具体可以进入官网了解。

2 做什么?

有如下表格:

需要将表格B列,D列,按照类别输出到不同的excel中,如:将性别为男的所有数据输出到一个excel中。

3 如何做?

1 通过nuget添加依赖

2 上代码:

            string path = "G:\\桌面\\测试excel.xlsx";string startcell = "2";List<string> coldistinct = new List<string>() { "B", "D" };var rows = MiniExcel.Query(path, startCell: "A" + startcell);Dictionary<string, List<IDictionary<string, object>>> keysData = new Dictionary<string, List<IDictionary<string, object>>>();foreach(IDictionary<string, object> row in rows){if(row["A"] != null){foreach(string col in coldistinct){if (keysData.ContainsKey(col + row[col].ToString())){keysData[col + row[col].ToString()].Add(row);}else{keysData.Add(col + row[col].ToString(), new List<IDictionary<string, object>>() { row });}}}}var savePath = "G:\\桌面\\SaveXlsx";foreach(var data in keysData){savePath = Path.Combine(savePath, $"{ data.Key }.xlsx");MiniExcel.SaveAs(savePath, data.Value);savePath = "G:\\桌面\\SaveXlsx";}

3.部分结果展示:

 

4 思路:

a.通过:MiniExcel.Query方法读取excel

b.定义变量,循环读出的数据并分类:

Dictionary<string, List<IDictionary<string, object>>> keysData = new Dictionary<string, List<IDictionary<string, object>>>();

foreach(IDictionary<string, object> row in rows)

c.读取已分类的数据keysData,分别写入不同的文件。

4 备注

代码仅进行简单的功能实现,有细节部分没有完善,可根据自己的实际情况修改即可。

这篇关于【.net core 通过miniexcel库将Excel文件内容分类输出到不同的Excel中】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/201029

相关文章

Python如何计算两个不同类型列表的相似度

《Python如何计算两个不同类型列表的相似度》在编程中,经常需要比较两个列表的相似度,尤其是当这两个列表包含不同类型的元素时,下面小编就来讲讲如何使用Python计算两个不同类型列表的相似度吧... 目录摘要引言数字类型相似度欧几里得距离曼哈顿距离字符串类型相似度Levenshtein距离Jaccard相

如何解决Pycharm编辑内容时有光标的问题

《如何解决Pycharm编辑内容时有光标的问题》文章介绍了如何在PyCharm中配置VimEmulator插件,包括检查插件是否已安装、下载插件以及安装IdeaVim插件的步骤... 目录Pycharm编辑内容时有光标1.如果Vim Emulator前面有对勾2.www.chinasem.cn如果tools工

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

关于Spring @Bean 相同加载顺序不同结果不同的问题记录

《关于Spring@Bean相同加载顺序不同结果不同的问题记录》本文主要探讨了在Spring5.1.3.RELEASE版本下,当有两个全注解类定义相同类型的Bean时,由于加载顺序不同,最终生成的... 目录问题说明测试输出1测试输出2@Bean注解的BeanDefiChina编程nition加入时机总结问题说明

Python创建Excel的4种方式小结

《Python创建Excel的4种方式小结》这篇文章主要为大家详细介绍了Python中创建Excel的4种常见方式,文中的示例代码简洁易懂,具有一定的参考价值,感兴趣的小伙伴可以学习一下... 目录库的安装代码1——pandas代码2——openpyxl代码3——xlsxwriterwww.cppcns.c

Python给Excel写入数据的四种方法小结

《Python给Excel写入数据的四种方法小结》本文主要介绍了Python给Excel写入数据的四种方法小结,包含openpyxl库、xlsxwriter库、pandas库和win32com库,具有... 目录1. 使用 openpyxl 库2. 使用 xlsxwriter 库3. 使用 pandas 库

使用Python在Excel中创建和取消数据分组

《使用Python在Excel中创建和取消数据分组》Excel中的分组是一种通过添加层级结构将相邻行或列组织在一起的功能,当分组完成后,用户可以通过折叠或展开数据组来简化数据视图,这篇博客将介绍如何使... 目录引言使用工具python在Excel中创建行和列分组Python在Excel中创建嵌套分组Pyt

使用Python在Excel中插入、修改、提取和删除超链接

《使用Python在Excel中插入、修改、提取和删除超链接》超链接是Excel中的常用功能,通过点击超链接可以快速跳转到外部网站、本地文件或工作表中的特定单元格,有效提升数据访问的效率和用户体验,这... 目录引言使用工具python在Excel中插入超链接Python修改Excel中的超链接Python

C#比较两个List集合内容是否相同的几种方法

《C#比较两个List集合内容是否相同的几种方法》本文详细介绍了在C#中比较两个List集合内容是否相同的方法,包括非自定义类和自定义类的元素比较,对于非自定义类,可以使用SequenceEqual、... 目录 一、非自定义类的元素比较1. 使用 SequenceEqual 方法(顺序和内容都相等)2.

java中不同版本JSONObject区别小结

《java中不同版本JSONObject区别小结》本文主要介绍了java中不同版本JSONObject区别小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录1. FastjsON2. Jackson3. Gson4. org.json6. 总结在Jav