jxl读取excel文件异常:Unable to recognize OLE stream 的解决方法
问题成因 使用jxl方式读取,可能只能支持xls格式的文件,对于xlsx格式就不再支持 如果是从网站导出的excel文件,有的网站比较坑,导出的并不是标准格式的excel,而是将html改扩展名为xls的“伪”excel文件。当用excel打开这类文件时,会弹窗提示其“扩展名和文件类型不匹配”是否还要打开。 而且,使用文本编辑器打开,会发现这个所谓xls文件其实是xml标签的文件。 解决方法 在excel中打开,另存成xls就可以。 但当文件比较多时,可以使用excel vba批量另存 。 第一种情况直接用vba批量另存即可,但第二种略有麻烦,因为会有报错弹窗,vba运行时会报错。 下面以第二种情况为例详细说明解决步骤。 首先,需要 禁止excel的报错弹窗 ,否则使用vba批量另存时会出错。方法如下: 1 1、开始 -> 运行 -> 输入regedit -> 确定 2 2、找到注册表子项 3 4 HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Excel\Security 5 6 3、在右侧空白处点击鼠标右键,选择“新建 -> DWORD值(D)”,输入"ExtensionHardening"点击确定。 7 4、用鼠标右键点击ExtensionHardening,然后单击“修改(M)”,在数值数据中填写"0"即可确定。 8 5