取得している例外は、提供しているファイルが有効な Excel バイナリ ファイルではなく、少なくとも 1990 年以降に生成された有効な Excel ファイルではないことを示しています。取得している例外は、POI が期待するものを示しています。代わりに、有効な.xls
ファイルではなく、POIが検出できるものではない何かが見つかりました。
注意すべきことの 1 つは、Excel が .csv や .html などのさまざまなファイル形式を開くことです。また、ファイル拡張子についてもそれほどうるさいわけではないため、.xls ファイルに名前が変更された CSV ファイルを問題なく開くことができます。ただし、.csv の名前を .xls に変更しても、魔法のように形式が変更されるわけではないため、POI ではまだ開くことができません。
.
例外から、何が起こっているかがわかります。また、古いバージョンの Apache POI を使用していることもわかります。のヘッダー署名は0x0010000000060809
、約 25 年前の Excel 4 ファイル形式に対応しています。より新しいバージョンの Apache POI を使用している場合は、提供されたファイルが古く、ほとんどサポートされていない Excel ファイルであることを示す役立つエラー メッセージが表示されます。POI の新しいバージョンには、これらの古い形式から一部の情報を引き出すことができるOldExcelExtractor ツールが含まれています。
それ以外の場合は、このタイプのすべての例外と同様に、Excel でファイルを開いて名前を付けて保存してみてください。これにより、現在のファイルが何であるかがわかります (例: .html は .xls として保存され、.csv は .xls として保存されます)。また、POI を読み込んで読み込むために、適切な .xls ファイルとして再保存することもできます。と連携。