C#导出excel 不安装office excel情况下
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#导出excel 不安装office excel情况下相关的知识,希望对你有一定的参考价值。
现在找到的方法都是用COM的创建excel实例再保存上,需要电脑上已安装excel才能导出excel,我想要不用安装office的情况也可以导出,版本Excel2003的xls文件即可,不需要多版本支持,理论上按照xls组织结构保存就可以实现的,wps做到了,求指点
我要最好是不依赖excel 的导出excel代码,告诉我Excel2003文档的内部组织结构,或者告诉我到哪能找到具体资料也可以
不过楼主要注意的是,Excel 2003的文件格式是所谓的的“Binary File Format”——二进制文件格式。意思是说你如果要分析(或者创建)这个格式的文件,基本上就必须按照一个字节一个字节、一个数据结构一个数据结构这样的方式去解析或者构建了。微软并没有为这个格式提供什么特别的读写SDK,所以你只能硬着头皮去解读这个长达1196页的文档格式,去自己分析一个个数据结构。或许网上能找到一些号称可以解析或者生成Excel的库,但是多半要收费或者不好用,希望可能也不大。
从Excel 2007开始,文件格式变成了Open XML,基本上就是一个ZIP文件里面打包了一堆XML文件和相关的资源。这个格式的解析和生成相对来说就要容易得多。一方面,处理ZIP和XML的代码、免费库等比比皆是;另一方面,微软提供了很全面的Open XML SDK,可以很方便的解析和生成文档。
Excel 2007(以及Excel 2010)的文件格式规范说明:http://msdn.microsoft.com/en-us/library/dd922181(office.12).aspx。这个规范说明总共也就210页,而且如果你使用SDK的话,或许也并不需要去很详细地阅读这个规范了。
Open XML SDK下载:http://www.microsoft.com/downloads/details.aspx?FamilyId=C6E744E5-36E9-45F5-8D8C-331DF206E0D0
所以,如果可能的话,尽可能选用Excel 2007格式。这不仅是发展的趋势,更主要的是能大大节省开发成本,争取更多时间和人力去做其它更重要的事情。 参考技术A 直接导入就行了啊,没那么复杂 参考技术B Excel.exe是可以独立运行的程序,直接引入你的工程就可以了。
这样无论你机器上是否安装Excel,那么你工程引入的Excel.exe就直接作为库引出。 参考技术C 你自己解决的不错 参考技术D 那就可以啦.你自己解决的不错
以上是关于C#导出excel 不安装office excel情况下的主要内容,如果未能解决你的问题,请参考以下文章
在没有为 Wpf 产品安装 MS Office 的情况下导出到 Excel
c#导出整个HTML页面到excel表格...汉字乱码,系统是win7,安装的office 07 导出的03(.xls)文件