c#树形数据导出到excel,急切,在线等。

7259 2015-11-26 05:44:27
数据表是这样存的。





怎么实现把数据库数据导出到excel中 ,能自动生成如下表头。



这个表头如何生成啊。
...全文
370 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
dianjixue1 2015-11-27
  • 打赏
  • 举报
回复
先创建一张二维表,表长度可调的 找到根目录,将内容、合并列数(此时为1)保存到二维表第一行第一列 找到二级目录,依次将内容、合并列数(此时为1)保存到二维表第二行,修改第一行第一列合并列数为二级目录的总个数 找到第一个二级目录对应的三级目录,依次将内容、合并列数(此时为1)保存到二维表第三行,修改第二行第一列合并列数为此二级目录下三级目录的总个数,修改第一行第一列的合并列数,添加 二级目录下三级目录的总个数-1 找到第二个二级目录对应的三级目录,依次将内容、合并列数(此时为1)保存到二维表第三行,修改第二行第二列合并列数为此二级目录下三级目录的总个数,修改第一行第一列的合并列数,添加 二级目录下三级目录的总个数-1 以此类推........ 总之,就是将所显示的内容与跨的行数先计算保存在一张表里 然后绘制Excel,绘制内容,合并所需的列数
bdmh 2015-11-27
  • 打赏
  • 举报
回复
没有自动,要什么样的表头,也要你自己去填充,用微软的dll或者NPOI都可以 或者自己先设计好一个excel模板,表头都设计好,然后你就顺序往后面填数
转角处灬守候 2015-11-27
  • 打赏
  • 举报
回复
NPOI 按照你给的Excel格式能操作生成 然后单元格的数据 就要看你表的结构去 读进去了
byronqiji 2015-11-26
  • 打赏
  • 举报
回复
有多少个末节点(没有子节点) 就有多少列 树的深度就是行数 root节点在第一行 父节点根据末节点合并单元格
具体内容请参考我的BLOG:http://blog.csdn.net/smallwhiteyt/archive/2009/11/08/4784771.aspx 如果你耐心仔细看完本文,相信以后再遇到导出EXCLE操作的时候你会很顺手觉得SO EASY,主要给新手朋友们看的,老鸟可以直接飘过了,花了一晚上的时间写的很辛苦,如果觉得对你有帮助烦请留言支持一下,我会写更多基础的原创内容来回报大家。 C#导出数据EXCEL表格是个老生常谈的问题了,写这篇文章主要是给和我一样的新手朋友提供两种导出EXCEL的方法并探讨一下导出的效率问题,本文中的代码直接就可用,其中部分代码参考其他的代码并做了修改,抛砖引玉,希望大家一起探讨,如有不对的地方还请大家多多包涵并指出来,我也是个新手,出错也是难免的。 首先先总结下自己知道的导出EXCEL表格的方法,大致有以下几种,有疏漏的请大家补充。 1.数据逐条逐条的写入EXCEL 2.通过OLEDB把EXCEL做为数据源来写 3.通过RANGE范围写入多行多列内存数据EXCEL 4.利用系统剪贴板写入EXCEL 好了,我想这些方法已经足够完成我们要实现的功能了,方法不在多,在精,不是么?以上4中方法都可以实现导出EXCEL,方法1为最基础的方法,意思就是效率可能不是太高,当遇到数据量过大时所要付出的时间也是巨大的,后面3种方法都是第一种的衍生,在第一种方法效率低下的基础上改进的,这里主要就是一个效率问题了,当然如果你数据量都很小,我想4种方法就代码量和复杂程度来说第1种基本方法就可以了,或当你的硬件非常牛逼了,那再差的方法也可以高效的完成也没有探讨的实际意义了,呵呵说远了,本文主要是在不考虑硬件或同等硬件条件下单从软件角度出发探讨较好的解决方案。

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧