找回密码
 立即注册

QQ登录

只需一步,快速开始

刘君

中级会员

141

主题

335

帖子

942

积分

中级会员

积分
942

活字格认证

[已处理] 导出excel的问题

刘君
中级会员   /  发表于:2022-1-6 10:49  /   查看:2542  /  回复:1
我采用 fpSpread1.SaveExcel()函数导出excel文件时,如是数据量小,还正常,如果数据大的话(超1万行,有时可达2万多行),经常出现中断,查内存,发现导出过程内在消耗较大。
请问:
1、这个函数后面的参数各有什么特点,官网的解释太专业,不懂。
2、有没有一种轻便的导出方式,如果我想要数据和格式,不需要导出其它内容,用什么参数合适?

1 个回复

倒序浏览
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-1-6 11:54:11
沙发
导出过程中需要写入excel文件,这个就会有很大的内存占用,以及样式,公式计算等等

函数后面的参数每个其实解释都比较清楚,因为比较多,你这边如果对哪个参数有疑问的话,我单独给你解释吧
比较常用的是UseOOXMLFormat ,这个设置后导出的才是xlsx,否则为xls

2.
如果要提高导出性能的话,建议可以尝试设置参数DataOnly。只导出数据,但是就没有样式了。其他的参数对性能影响不大
  1. fpSpread1.SaveExcel(filename, ExcelSaveFlags.UseOOXMLFormat | ExcelSaveFlags.DataOnly);
复制代码
要样式的话,目前没有什么优化速度的办法

如果不需要导出,只想获取数据的话,GetArray是一个更快速的方法
  1. fpSpread1_Sheet2.GetArray(0, 0, fpSpread1_Sheet2.NonEmptyRowCount, fpSpread1_Sheet2.NonEmptyColumnCount);
复制代码


回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部