求助,旧版本WPS打不开xlsx文件(使用poi5.2.2生成)

wps2016版本(版本号为10.1.0.6331或10.1.0.6332),客户为国产化环境,只能使用wps,购买了此版本的授权且无法升级版本,所有部署此版本wps的机器都无法打开xlsx文件。

排查分析后,定位问题原因:poi从4.1.2 升级到5.2.2,使用SXSSFWorkbook流式方式生成的xlsx无法在上述环境下打开。

经验证,现象总结如下:

  1. 使用Office Excel或最新WPS无此问题。

  1. 使用更旧版本的wps(9.1.0.4953)也无此问题。

  1. 将此文件使用Office Excel打开一次并保存后可解决此问题。

  1. 使用poi旧版本4.1.2生成的xlsx可以在wps2016中正常使用。

  1. 使用poi新版本5.2.2的非流式方式(XSSFWorkbook)生成的文件可以在wps2016中正常使用。

山东省
浏览 1149
收藏
点赞
分享
+1
2
+1
全部评论 2
 
懒得批爆

@WPS产品体验官

大概看懂了一丢丢,其实就是大部分都不懂,某个方式从系统中导出的xlsx格式无法被旧版本应用打开,那么是否需要修改导出方法? 或者导出为xls格式? xlsx格式使用的其实是Open XML格式,是否在处理格式时没有正确配置,类似与.NET Framework的各个版本一样 随手在网上帮你搜了下,这应该不是WPS或office的问题, 就好比以前加95#汽油的车,到某个地方只能加92#的情况下怎么办,那就调整发动机压缩比、更换一些关键零件即可。
· 四川省
回复
其实一句话总结就是:poi5.2.2生成的xlsx文件在wps2016中无法打开 使用SXSSFWorkbook几乎是唯一可行的方法,XSSFWorkbook容易导致内存溢出,HSSFWorkbook(xls)限制只能导出65536行数据,不满足需求。 个人感觉是wps2016的一个bug,因为目前只在特定的版本上能复现,更旧或更新的wps都无此问题。
· 山东省
回复