5

apache XSSF を使用して xls ファイルを読むのに助けが必要です。

XSSF の実装は、"xlsx" に対して正常に動作しています。「xls」ファイルでは機能しません。

コードは次のとおりです。

    XSSFWorkbook workBook = new XSSFWorkbook("fileName");
    XSSFSheet sheet = workBook.getSheetAt(0);
    XSSFRow row = sheet.getRow(0);

任意の回避策をいただければ幸いです。

4

2 に答える 2

13

XSSF クラスを直接使用するのではなく、HSSF (.xls) と XSSF (.xlsx) の両方に共通のインターフェイスを使用する必要があります。質問のコード スニペットは次のようになります。

 Workbook wb = WorkbookFactory.create(file); // Or InputStream
 Sheet sheet = workBook.getSheetAt(0);
 Row row = sheet.getRow(0);
 Cell cell = row.getCell(0);
 System.out.println("Cell A1 is of type " + cell.getCellType());

詳細と例については、 Apache POI クイックガイドを参照してください。

于 2012-04-19T08:42:55.373 に答える
-1

これを試して...

FileInputStream is = new FileInputStream(filePath))
XSSFWorkbook workbook = new XSSFWorkbook(is);
is.close();

以下のこのリンクには、この問題の解決策があるようです...頑張ってください。

http://apache-poi.1045710.n5.nabble.com/InvalidOperationException-Can-t-open-specified-file-td5524067.html

于 2012-04-18T16:09:45.490 に答える