0

重複の可能性:
OutOfMemoryError:2.3MBのXML応答を受信した場合

XML形式の大量のバイナリ文字列である応答文字列をWebサービスから取得しました。応答データをオブジェクトに保存できます。しかし、応答を解析してローカルデータベースに保存したいと思います。したがって、オブジェクトデータを文字列に変換する必要があります。オブジェクトデータを文字列に変換した場合。「メモリの問題」が発生します。

私の応答はこのようなものです

<xmlstring>
<oneslip>78364</oneslip>
<threeslip>Hello</threeslip>
<twoslip>3</twoslip>
<Binarydata>"Here the large amount of binary data"</Binarydata>

<oneslip>78364</oneslip>
<threeslip>Hello</threeslip>
<twoslip>3</twoslip>
<Binarydata>"Here the large amount of binary data"</Binarydata>

..
..
..

50まで

</xmlstring>
4

2 に答える 2

0

StringBufferをお試しください

bufferedReader = new BufferedReader(
                     new InputStreamReader(
                         response.getEntity().getContent()));

StringBuffer stringBuffer = new StringBuffer("");
String line = "";
String LineSeparator = System.getProperty("line.separator");

while ((line = bufferedReader.readLine()) != null) {
    stringBuffer.append(line + LineSeparator); 
}

bufferedReader.close();
于 2012-07-11T11:31:18.267 に答える