POIを使用してMicrosoftWord文書、つまり.docx形式を読みたいのですが、エラーが発生します。
The supplied data appears to be in the Office 2007+ XML. POI only supports OLE2 Office documents
誰かが私がこれを取り除くのを手伝ってくれるなら??
POIを使用してMicrosoftWord文書、つまり.docx形式を読みたいのですが、エラーが発生します。
The supplied data appears to be in the Office 2007+ XML. POI only supports OLE2 Office documents
誰かが私がこれを取り除くのを手伝ってくれるなら??
何を変更する必要があるかを理解するために、「HSSFから共通SSユーザーモデルへの変換」ページを一読する必要があります。
ただし、一般的なガイドとして、コードが以前にあった場合
HSSFWorkbook wb = new HSSFWorkbook(new FileInputStream("foo.xls"));
HSSFSheet s = wb.getSheetAt(0);
HSSFRow r = s.getRow(0);
System.out.println("Cell A1 is " + r.getCell(0));
代わりに
Workbook wb = WorkbookFactory.create(new File("foo.xls")); // Or foo.xlsx
Sheet s = wb.getSheetAt(0);
Row r = s.getRow(0);
System.out.println("Cell A1 is " + r.getCell(0));
新しいモデルXSSFおよびHSSFについては、http: //poi.apache.org/spreadsheet/converting.htmlを確認してください。
使用しているPOIのAPIはわかりませんが、HSSFAPIを使用していると思います。代わりに、XSSF APIを使用する必要があります(詳細については、http://poi.apache.org/spreadsheet/index.htmlを参照してください)。たとえば、使用する代わりWorkbook wb = new HSSFWorkbook();
にWorkbook wb = new XSSFWorkbook();
HSSFワークブックは、HSSFワークブックがXXSFWOrkbookを使用する代わりに、より高いバージョンのExcelファイルでは機能しません。以下のリンクで完全なコードを入手できます。
http://aravind-soa.blogspot.com/2017/02/how-to-import-excel-file-into-oracle.html