をロードするために多くの時間をとります。XSSFWorkbookは、私は次のコードを使用してい
File file = new File("abc.xlsx");
InputStream st = new FileInputStream(file);
XSSFWorkbook wb = new XSSFWorkbook(st);
のxlsxファイル自体は25,000行があり、各行は500列のコンテンツを持っています。デバッグ中に、私はXSSFWorkbookを作成する第3行目を見ました。このステートメントを完了するのに多くの時間(1時間!)がかかります。
元のxlsxファイルの値にアクセスするより良い方法はありますか?
おかげ アビシェークS
これで問題が完全に解決されない場合は、poi event apiを小さなメモリフットプリントとして使用して大きなファイルを読み取ることができます。 poiのドキュメントには、次の例があります。http://poi.apache.org/spreadsheet/how-to.html#xssf_sax_api –
ありがとう、これを試してみてください。これがどのようにして問題を解決するのか不思議です。内容をメモリにバッファリングしませんか?または、それはちょうど元の参考文献を使用してデータにアクセスしますか? –
ファイルを開いて開くと、入力ストリームで開いた場合よりもバッファリングが少なくなります – Gagravarr