0

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の内容を読み取る方法はありますか?

編集: ヒープメモリを増やすことができることは知っていますが、どの環境でも機能するため、コードベースのソリューションを探しています。

4

1 に答える 1

0

IDEを使用している場合は、これを試してください

Run Configuration > Arguments > -Xmx7048m

コンパイルする最大 RAM を増やす

于 2016-10-22T17:04:17.943 に答える