如何使用jexcel读取excel?

时间:2010-08-05 09:08:36

标签: java jexcelapi

我正在尝试使用Java代码读取Excel文件 但是我得到了以下错误:

jxl.read.biff.BiffException:无法识别OLE流

当我在网上搜索时,我发现jExcel仅支持excel 2003,而且这个错误是在2007年制作excel的时候出现的,我只保存了我的excel 97-2003格式而且我仍然遇到这个问题

3 个答案:

答案 0 :(得分:9)

JExcel API不支持excel 2007,您可以使用Apache POI HSSF/XSSF

这是从网站上阅读和重写工作簿的示例代码

InputStream inp = new FileInputStream("workbook.xls");
//InputStream inp = new FileInputStream("workbook.xlsx");

Workbook wb = WorkbookFactory.create(inp);
Sheet sheet = wb.getSheetAt(0);
Row row = sheet.getRow(2);
Cell cell = row.getCell(3);
if (cell == null)
    cell = row.createCell(3);
cell.setCellType(Cell.CELL_TYPE_STRING);
cell.setCellValue("a test");

// Write the output to a file
FileOutputStream fileOut = new FileOutputStream("workbook.xls");
wb.write(fileOut);
fileOut.close();

答案 1 :(得分:0)

我没有JExcel的经验,但我相信你认为问题是文件格式之一是正确的。我建议你试试Apache POI项目。我广泛使用它来读写Excel电子表格。它将读取从Excel 5.0以后的IIRC创建的任何电子表格,并支持.xsl和.xslx文件类型。

答案 2 :(得分:-1)

我使用JExcel很长一段时间但从来没有遇到过这种问题。我认为您的文件不是XLS格式。您尝试创建一个新的Excel文件并尝试阅读它。

相关问题