0

メモリ フットプリントが小さい大きなサイズの xlsm を読み取る必要があります。Apache POI は XSSF SAX を提供するため、それを使用することをお勧めします。SAX で解析された既存の xlsm の最初のシートで、db からいくつかのデータを追加し、別の xlsm として書き出す必要があります。SXSSF はストリーミング書き込みを提供するため、SAX 読み取りと SXSSF 書き込みの両方を組み合わせる必要があります。このようにして、大きなサイズのヒープサイズの問題を回避できると思います。

これはPOIを使用して可能ですか、それとも他のアプローチはありますか?
このアプローチについて、例を挙げて教えてください。

4

1 に答える 1

1

POI Spreadsheet Feature tableに基づくと、SXSSF バッファー ストリーミングではファイルを読み取ることはできませんが、SXSSF バッファー ストリーミングにはファイルを書き込む機能があります。

私の提案は、SAX で解析し、XSSF イベントモデルを使用して読み取り、SXSSF バッファー ストリーミングを使用して新しいファイルを書き込むことです。

于 2014-01-30T20:38:42.613 に答える