java大概1000W数据导出成excel有什么好的建议。(最好是插件,POI、JXL、FastExcel已试过,数据量太大,不

客户需求,要导出大概一千万的数据成excel形式。求解决方案!POI、JXL、FastExcel三个对一千万的数据处理不是很好。求解!... 客户需求,要导出大概一千万的数据成excel形式。求解决方案!POI、JXL、FastExcel三个对一千万的数据处理不是很好。求解! 展开
 我来答
littleatp
推荐于2016-04-24 · TA获得超过852个赞
知道小有建树答主
回答量:307
采纳率:100%
帮助的人:380万
展开全部
使用POI或JXL的话,数据是一次性读入内存,封装成对象,再一次性导出的。这么大的数据量都有G级了吧,如果是一次性作业的话,内存很难受。
考虑分批,追加写入的方式,对于简单的字节字符流文件是可取的。然而写成excel这种结构化的文件格式应该是没办法胜任了,追加写入时往往需要事先获知文件的结构信息,然后找到相应的位置进行插入,而这个过程也是复杂的(这也是POI、JXL出现的原因)。
因此,建议你输出为多个excel文件吧。

PS:不知道这么大的数据为何还要输出成Excel文件,Excel文件本来就是给人看的,相信你的数据一定不是给人看的,而是作为存储载体而已,那么使用更加简洁的方式不是更好?使用简单的文本文件进行存储(还可实现追加);使用库表作为载体则更优
howardHe
2011-06-24 · TA获得超过463个赞
知道小有建树答主
回答量:248
采纳率:0%
帮助的人:217万
展开全部
Excel本身就不支持这么多数据,一个sheet也就容65535行数据,一个workbook最多256个sheet,
同时还要求JVM的内存够大
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
手机用户26212
2011-06-26 · TA获得超过224个赞
知道答主
回答量:447
采纳率:100%
帮助的人:252万
展开全部
是的,excel是有60000行的限制。如果你能够正确的导出excel,说明你已经掌握了excel的操作。我提供一种思路供你参考:判断你要导出数据的行数,以6万为基数,进行程序判断。可以通过循环的方式,计算出需要的sheet数量,每次循环建立一个sheet,然后把数据导入。关键的问题在于创建新的sheet和,计算导出的数据。希望对你有所帮助吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
覆载代码库
2011-06-24
知道答主
回答量:26
采纳率:0%
帮助的人:12.8万
展开全部
此需求可以放弃,转换业务思路,找到问题的根源,从业务上解决问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式