与excel交互的几种“非常”思路

来源:互联网 发布:淘宝评价晒不了照片 编辑:程序博客网 时间:2024/05/22 13:38

程序与Excel交互(Excel导入或导出),最经常使用的是OLE。OLE一个最大的缺点就是其针对单元格操作,加之文件IO的开销,在面对大数据量问题时,OLE就显得力不从心。可以试试下面几种非常规思路(导出excel的思路)。

一:利用剪贴板

可以将要导出的Excel内容按照下面的格式格式化,再将内容以“CT_TEXT”的格式放到剪贴板,之后通过OLE,利用粘贴操作,将剪贴板上的内容,拷贝到excel文件里,实现导出。

excel格式:col1\tcol2\t......\r\n. 说明:列与列之间以tab符"\t"隔开,每行以"\r\n"结束。

优点:大部分操作在内存中完成,效率高。

缺点:因为剪贴板是全局共享的,存在多进程争夺剪贴板的问题,要避免剪贴板中内容被破坏的问题;而且这种方式只能导出Excel的内容,无法设置Excel的格式

二:通过临时文件

可以先将要导出的内容导出到csv或txt格式的临时文件,再打开待写入的Excel文件,将临时文件中的内容导入的excel中。

优点:同上

缺点:同样无法设置excle的格式

三:通用HTML

将要导出的内容导出成HTML格式,再将HTML转换到Excel。

优点:可以设置excel的格式信息