大量のデータを xml として返す残りの Web サービスを呼び出す必要があります。データのサイズは約 490m です。サービスを呼び出そうとするたびに、メモリが不足します。私がしたいのは、このデータをファイルに書き込むことだけです。
メモリ不足を避けるために、データを小さなチャンクで読み書きする方法はありますか?
これが私が試したことです。
public class GetWs {
private static String url ="http://somewebservice";
public static void main(String[] args) {
InputStream in;
OutputStream out;
try {
out = new FileOutputStream("testoutfile.txt");
in = new URL(url).openStream();
int b;
do {
b = in.read();
if (b != -1) {
out.write(b);
out.flush();
}
} while (b != -1);
in.close();out.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}