Web サービスから取得した zip ファイルの内容の読み取りに問題があります。
zip ファイルはbytes
、以下のコードでわかるように、 と呼ばれるバイト配列に格納されます。
ZipInputStream zis = new ZipInputStream(new ByteArrayInputStream(bytes.get()));
String rawJson = IOUtils.toString(zis);
実行するIOUtils.toString(zis)
と、OutOfMemoryError: Java heap spaceが発生します。
この問題は、zip に含まれる json ファイルのサイズが 150MB を超えていることが原因であると確信しています。他の小さなファイルで試してみましたが、json コンテンツを問題なく取得できます。
メモリに保存せずにzipの内容を読み取る方法はありますか?
編集: ヒープメモリを増やすことができることは知っていますが、どの環境でも機能するため、コードベースのソリューションを探しています。