web导出Excel也不是什么新鲜的话题了,到网上一查,结果一大堆。可是要挑选一个好的、合适的方法也不容易。再加上自己也没有真正的做过这方面的导出工作,到底选那种方法好呢?最近一个一个方法地试了一边,小结出来给大家做个参考。
(一)、首先想到的是用服务器端的Excel软件com来生成目标Excel。
这个是网上找到介绍最多的方法。这方法不多说了,有需要的可以到网上找,这里简单讲讲。这种方法就是调用服务器端的Excel软件,来读取模板,填写模板的。就是后台启动Excel来处理的,在进程管理器里可以查看到它的进程。
方法缺点:服务器端要装Excel软件,处理效率低,容易产生进程无法回收。
优点:Excel处理功能丰富,多样,可以完成一切的Excel文件处理。
(二)、利用MSOWC,即是微软的 office web component。
安装office就有安装到这个组件。文件和编程参考在系统盘的Program Files\Common Files\Microsoft Shared\下有Office10或者Office11版本。文件夹中还有帮助文件和例子
(三)、导出XML类型的Excel文件。其实是一个XML文件。这个方法好啊,用起来放心。因为asp.net里面提供了很多丰富易用的xml类,xml处理起来明了,简单。我把原来的Excel文件保存为xml文件,用做模板。接着就是读写Xml文件了。
想这么读就怎么读,想怎么写就怎么写,查找记录、改变属性值方便。
优点:不用安装Excel等软件,处理灵活,效率高。
缺点:Excel2000版本不支持xml,不知道其他版本支不支持。我用的是2003版本。
(四)、用htm文件。还好Excel2000支持htm,可以把Excel内容保存到htm中。其实就是旧版本的xml吗。当然,样式和公式也可以用。我正打算用这个方法来做。(还没有去全面试用,不过自己对html还是很熟的,处理起来应该没问题。)
优缺点先不说,不过它代替xml在低版本的Excel中兼容。
(五)、网上也有说用text做中介的。可是这种文件表示不了样式,公式等等,格式也很死板。
(六)、ado.net 容易出错,而且操作也不灵活,插入等经常遇到问题,而且不能删除行。比较适用于结构单一的Excel表。
转载自:http://www.cnblogs.com/lxinxuan/archive/2006/10/31/545533.html