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