1

潜在的に大きな xml ファイルを使用するアプリを作成したいと考えています。また、変更され、理想的には逆にトラバースできるようになります。

SAX、DOM、および XML プル パーサーがあることは知っています。実現不可能と思われる独自のオブジェクト ツリーの作成にメモリを費やさない限り、プル パーサーは使用できません。私が望むことを実行できる別のパーサーがない限り、SAX と DOM はそのままです。非常にありそうもない、私は知っています。はい、私はこの答えを見ました: https : //stackoverflow.com/questions/7498616/which-xml-parser-should-i-use-for-android

4

2 に答える 2

0

DOMは、一度にすべてのXMLをロードするほとんどの場合に適しています。ただし、XMLサイズが非常に大きい場合は、SAXパーサーを使用して、毎回XMLの先頭からタグを読み取る必要があります。

XMLが本当に大きい場合は、リクエストで要件を送信してサーバー側からフィルタリングすることをお勧めします。そうしないと、提案されるページネーションを行うことができます。

于 2012-03-20T18:09:14.507 に答える
0

XML の解析に関しては、多くのオプションがあります。ただし、いつどのパーサーを使用できるかは、独自の要件によって異なります。そのためには、パーサー間の基本的な違いを知る必要があります。ここに私が提供したいくつかの基本的な情報があります。

SAXパーサーは、パーサーが XML ツリーをウォークスルーするときにコードに通知されるパーサーであり、状態を追跡し、パーサーが進行するときにデータを追跡する必要があるオブジェクトを作成する必要があります。

DOMパーサーはドキュメント全体を読み取り、さまざまな要素をクエリできるメモリ内表現を構築します。多くの場合、XPath クエリを作成して特定の部分を引き出すことさえできます。

そして、あなたが言ったように、大きなファイルがあり、より高速なパフォーマンスが必要な場合は、StAX パーサーを使用することをお勧めします。ここにそのリンクがあります。

これがあなたを助けることを願っています...

このリンクも参照してください。

于 2012-03-20T17:56:32.690 に答える