用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版本问题?让客户“另存为”操作,客户不满意,从网上找了一阵资料也没结果,又哪位大虾解决过这歌问题,麻烦看下,感谢感谢!
程序没错,请看清楚了:文件另存为新文件,读新文件可以读出数据。关键问题是新旧文件的格式问题