0

私は1つのアプリケーションを開発しています。その中で、xml 解析から 1000 の結果を取得します。すべての結果には異なる属性があります。そのため、属性に対して 1 つのクラスを作成し、結果ごとに 1 つのオブジェクトを作成します。結果を 1 つの配列に保存します。私の疑問は、これが多くの結果であり、メモリの問題に直面する可能性があるという事実によるものです。これが問題である場合、どのように対処すればよいですか? これを行う方法を教えてください。

4

2 に答える 2

0

非常に大きなドキュメントを解析する場合はNSXMLParser、デリゲートオブジェクトを使用してドキュメントを解析します。XMLを表すオブジェクトの巨大なツリーを作成するのではなく、パーサーは新しい属性や要素などに遭遇するたびにデリゲートを呼び出します。これにより、中間のXML解析でメモリを浪費することなく、データオブジェクトを直接構築できます。ツリー表現。

これを実行したら、オブジェクトを作成するときに、またはバッチで保存できます。

非常にメモリを意識している場合は、実際にNSXMLParserを使用して、ダウンロード中に入力ストリームを解析できるため、完全なXMLテキストをメモリに保持する必要はありません。(中断を避けるために、ディスクファイルにダウンロードしてから、ファイルから解析することもできます。)

于 2012-05-17T17:51:56.203 に答える
0

Objective-C でのメモリ管理については、以下の説明で詳しく説明しています。

http://www.iphonedevsdk.com/forum/iphone-sdk-tutorials/7295-getters-setter-properties-newbie.html

これがあなたの質問に答えることを願っています...

于 2012-05-17T17:38:05.493 に答える