1

Javaコードを使用してExcelファイルを読み取ろうとしていますが、次のエラーが発生しています:

jxl.read.biff.BiffException: OLE ストリームを認識できません

ネットで検索したところ、jExcel は Excel 2003 までしかサポートしていないことがわかりました。このエラーは、Excel が 2007 年に作成されたときに発生します bt Excel を 97-2003 形式でのみ保存しましたが、まだこの問題が発生しています

4

3 に答える 3

9

JExcelAPIはExcel2007をサポートしていません。ApachePOIHSSF/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();
于 2010-08-05T10:48:31.310 に答える
0

私は JExcel の経験がありませんが、問題はファイル形式の 1 つであると考えるのは正しいと思います。Apache POIプロジェクトを試すことをお勧めします。Excelスプレッドシートの読み書きに幅広く使用しています。Excel 5.0 以降の IIRC から作成されたスプレッドシートを読み取り、.xsl と .xslx の両方のファイル タイプをサポートします。

于 2010-08-05T09:15:47.480 に答える
-1

私は長い間JExcelを使用していますが、この種の問題は一度もありません。あなたのファイルは XLS 形式ではないと思います。新しい Excel ファイルを作成して、それを読み取ろうとします。

于 2010-08-05T09:24:03.007 に答える