java 生成excel文件打开提示文件损坏 java生成后缀xlsx无法打开_数据

→    关于文件版本    ←

前文说到的常规格式(即文件的后缀名)是.xls和.xlsx两种,分别对应的是Excel2003和Excel2007及以后的版本默认文件格式。


java 生成excel文件打开提示文件损坏 java生成后缀xlsx无法打开_VBA_02

此处我想岔开话题说说文件后缀名的问题——很多Windows用户都习惯选择隐藏已知文件类型的扩展名(后缀名)。这样做的好处可能是在修改文件名称的时候不用担心改错了后缀名造成文件损坏。但这样做容易混淆不同类型的文件,后续如果需要用公式跨文件引用、用SQL提取数据时,会造成不必要的麻烦。


↓↓↓

因此强烈建议不要点选这一选项,尽量使用F2(或者Fn+F2)按钮修改文件名,只要不触及文件名后的“.”及其文件格式的信息,就不会改错文件类型,具体操作可以参看下图控制面板中的几个步骤。


java 生成excel文件打开提示文件损坏 java生成后缀xlsx无法打开_后缀名_03

常见的文件格式各有优势,但是也存在各自的缺点。比如.xls的文件可以储存含有VBA代码的宏,却只能保存65536行数据,而且保存时还会提示检验文件的兼容性;而.xlsx的文件保存数据量可以很大,却不能储存VBA代码。


java 生成excel文件打开提示文件损坏 java生成后缀xlsx无法打开_后缀名_04

除此之外,上述两种格式的文件在储存等量数据、公式时,文件本身会较大,保存速度也较慢。因此,强烈推荐一种兼具上述优势的文件格式——.xlsb格式(二进制文件格式)。这种格式的文件既可以存储和.xlsx格式文件一样多的数据,又可以储存VBA代码进行宏运算,而且占用的空间更小、保存速度更快。通过快捷键F12(或者Fn+F12)另存文件时,大家就可以尝试保存为.xlsb格式文件对比一番了。