JAVA读取EXCEL文件异常Unable to recognize OLE stream

用JXL读取*.xls格式的文件,碰到一个问题,抛出下面的异常:jxl.read.biff.BiffException:UnabletorecognizeOLEstrea... 用JXL读取*.xls格式的文件,碰到一个问题,抛出下面的异常:
jxl.read.biff.BiffException: Unable to recognize OLE stream
at jxl.read.biff.CompoundFile.<init>(CompoundFile.java:116)
at jxl.read.biff.File.<init>(File.java:127)
at jxl.Workbook.getWorkbook(Workbook.java:221)
at jxl.Workbook.getWorkbook(Workbook.java:198)
at Excel.TestExcel.main(TestExcel.java:17)

折腾了一阵发现读取的*.xls文件,用记事本可以打开后,为HTML格式。然后让把文件“另存为”就可以读取了,另存为1.xls文件后,新文件用记事本打开后就是二进制的格式了。
不知道什么原因,怀疑为EXCEL版本问题?让客户“另存为”操作,客户不满意,从网上找了一阵资料也没结果,又哪位大虾解决过这歌问题,麻烦看下,感谢感谢!
程序没错,请看清楚了:文件另存为新文件,读新文件可以读出数据。关键问题是新旧文件的格式问题
展开
 我来答
wufisher
推荐于2017-10-09 · TA获得超过3960个赞
知道小有建树答主
回答量:621
采纳率:0%
帮助的人:631万
展开全部
首先你这个Excel文件是从哪里来的,很可能是从一个页面上下载来的,而这个页面做的功能就是导出Excel,但做偷懒了,没有用jxl和POI等库,而是用直接用jsp生成html写的。

因此你上传时就要要判断了,如果是真的excel就要用jxl或POI解析,如果只是html,就要用HTML的解析方法了。
宫甜恬秦晗
2019-07-21 · TA获得超过3.1万个赞
知道大有可为答主
回答量:1.1万
采纳率:25%
帮助的人:806万
展开全部
解决方法:用EXCEL建立建立的文件不会出现这个问题了。
原因:你手工建立一个文件,并给它命名,给它后缀名,电脑可以识别是因为你的电脑装了OFFICE
里面的EXCEL。
但是在JAVA程序中并不知道你是EXCEL文件,所以被认为不能识别的。如果你的电脑没装EXCEL你再建立个文件再改名为exce的后缀名的话,你的电脑也不会识别是什么文件的。。你打开绝对是乱码。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
世间百态道法自然
2008-07-31 · TA获得超过560个赞
知道小有建树答主
回答量:1366
采纳率:11%
帮助的人:321万
展开全部
你的机器没安装 Java 插件吧`````~他这个文件里面有java 命令
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
乌微月2S
2008-07-31 · TA获得超过5037个赞
知道大有可为答主
回答量:5361
采纳率:42%
帮助的人:2885万
展开全部
文件没加后缀名?
流写的有问题?
根据错误,看看哪出错了!
好像是流选择错了!可以贴下代码吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式