Android 用のアプリを開発しています。かなり大きな XML ファイルを作成する必要があります。
DOM ドキュメントでこれを試してみましたが、メモリ内に存在するため、「メモリ不足」エラーがスローされます。
誰かが別の解決策を提案できますか? これはゼロから作成された XML ファイルです。
XMLに変換したいデータをトラバースするように、XMLをストリームまたはライターに段階的に書き込みます。このようにして、元のデータよりも多くのメモリを必要としません。
ストリーミング XML が最適です。最も「バニラ」なアプローチは、おそらく StAX を使用することです: http://docs.oracle.com/javaee/5/tutorial/doc/bnbem.html#bnbff
大きなデータサイズの場合、常にメモリが不足します。データを分割して小さなチャンクを作成し、それらをすべて一緒に追加するのはどうですか。
または、メモリの消費量が少ない SAX パーサーを使用することもでき ます。