Aspose.Cells for IOException: File is corrupted が発生する

下記のサンプルデータを処理する際に下記のコードで例外が発生しました。

Workbook workbook = new Workbook(inputStream);

java.io.IOException: File is corrupted
        at com.aspose.cells.zccm.b(Unknown Source)
        at com.aspose.cells.zccm.a(Unknown Source)
        at com.aspose.cells.zccm.a(Unknown Source)
        at com.aspose.cells.zccm.b(Unknown Source)
        at com.aspose.cells.zccm.a(Unknown Source)
        at com.aspose.cells.zccm.c(Unknown Source)
        at com.aspose.cells.zccm.b(Unknown Source)
        at com.aspose.cells.Workbook.a(Unknown Source)
        at com.aspose.cells.Workbook.<init>(Unknown Source)

使用バージョン:Aspose.Cells for Java 18.5
サンプルデータ:http://kba.co.ke/downloads/Branch%20Code.xls

この例外を回避しファイルを処理できるようにすることは可能でしょうか。

お手数おかけしますが、ご確認の程よろしくお願いいたします。

@yudai_yamaguchi,

サンプルコードとテンプレートファイルをありがとう。

MS Excelでファイルを手動で開きます。 エラーメッセージが表示されます。 最終的にファイルを開くことができる場合、MS Excelはファイルを修復する必要があります。 つまり、有効なファイルが見えないか破損しています。 したがって、このエラーメッセージが表示されます。 ファイルを強制的に開き、再度保存することができます。 Aspose.Cellsを使用してAPIでファイルを読み取ることができるようになりました。

ご返答ありがとうございます。

Microsoft Excel 2013でファイルを開いた場合、修復が必要であるというエラーメッセージが表示されます。
しかし、Microsoft Excel 2016でファイルを開いた場合はエラーメッセージが表示されず、正常に開くことができます。

Excelで修復しなくても開けるファイルであるのため、Excelで再度保存しなくても、ASPOSEで処理できるようにしていただくことは可能でしょうか。

お手数おかけしますが、ご確認の程よろしくお願いいたします。

@yudai_yamaguchi

Microsoft Excel 2016でExcelファイルを開くと、保護されたビューで開きます。 通常、保護されたビューファイルは破損しているとみなされます。 参照用のスクリーンショットをご覧ください。


Screenshot

  • Protected View Warning on opening Excel file.