ホームページ  >  記事  >  バックエンド開発  >  XML の 4 つの一般的な解析方法は何ですか?

XML の 4 つの一般的な解析方法は何ですか?

青灯夜游
青灯夜游オリジナル
2019-04-03 15:52:1124633ブラウズ

Xml 解析方式には、1. XML 文書を変更できる DOM 解析方式、2. 解析速度が速く、メモリ使用量が少ない SAX 解析方式、3. 簡単に解析できる JDOM 解析方式があります。検索; 4. DOM4J 解析メソッド、XML を高速に解析します。

XML の 4 つの一般的な解析方法は何ですか?

XML を解析する方法は数多くありますが、最も一般的に使用されるのは 4 つの解析方法、つまり DOM メソッド、SAX メソッド、JDOM メソッド、および DOM4J メソッドです。 。

XML の概要

##XML は、セマンティック タグ (タグ) を定義できる拡張可能なマークアップ言語であり、メタ マークアップ言語です。 。 XML は、指定されたタグのみを使用できるハイパーテキスト マークアップ言語の HTML とは異なり、ユーザーが必要なタグを定義できます。木の模型。

XML ドキュメントはデータを階層タグの形式で編成し、主に構成ファイル、静的データの保存、データ交換に使用されます。

XML 構文

1. 各 XML ドキュメントは XML プリアンブルで始まります。前のコードの最初の行は XML プリアンブル、

< ;?xml です。 version="1.0"?>

2. 開始タグには終了タグが必要です。

3. タグは適切な順序でネストする必要があるため、終了タグはミラー順序で開始タグと一致する必要があります。

4. ラベルに属性がある場合、属性値を二重引用符で囲む必要があります。

XML ファイルを解析する 4 つの方法

1. DOM 解析方法

DOM、ドキュメントオブジェクト モデルは公式に推奨される標準です。 DOM は、HTML および XML ドキュメントのプログラミング インターフェイス仕様であり、プラットフォームや言語に依存しません。 DOM仕様を利用することで、DOM文書とxmlの相互変換を実現し、対応するDOM文書の内容を横断して操作することができます。 DOM 仕様の中核はツリー モデルであり、すべてが読み取られた後に解析されます。

原則は、まずメモリ内に Document オブジェクトを作成し、次に XML ドキュメントを読み取って DOM オブジェクトに割り当てます。 DOM オブジェクトはツリー構造に基づいているため、DOM オブジェクトをトラバースするだけです。メモリ内の DOM オブジェクトをクエリ、変更、削除できます。また、元の XML ドキュメントをライトバックして変更を保存することもできます。

利点: ツリー全体がメモリ内にあるため、xml ドキュメントにランダムにアクセスでき、xml ドキュメントを変更できます。

欠点: ドキュメント全体が必要になるため、ドキュメント全体を一度に解析する必要があります。

#2. SAX 解析方法

#SAX、Simple Application Programming Interface (Simple Api For Xml)。 W3C によって正式に提供されていない標準は、プログラマーのコミュニティによって開発されています。 SAX は概念的に DOM とはまったく異なります。それはドキュメント駆動ではなく、イベント駆動です。イベント駆動型: コールバック メカニズムに基づいたプログラム実行メソッド。外側から内側まで層ごとに分析します。

利点: 解析速度が速く、必要なメモリが少なく、必要なデータをロードして解析します。

欠点: タグの関係は記録されませんが、アプリケーションが独自に処理する必要があるため、プログラムの負荷が増加します。

3. JDOM の解析方法

JDOM は Java と DOM を組み合わせたものです。 JDOM は、Java コードを通じて XML データにアクセス、操作、出力できる完全な Java ベースのプラットフォームの構築に取り組んでいます。 JDOM は、Java 言語を使用して XML の読み取り、書き込み、操作を行う新しい API 関数です。シンプル、効率的、最適化されています。

利点: 検索が容易で、変更が可能です

欠点: ドキュメント全体をロードするには大量のメモリ容量が必要です

4. DOM4J の解析方法。

dom4j は、jdom と同様の Java XML API で、XML ファイルの読み取りと書き込みに使用されます。優れたパフォーマンス、強力な機能、使いやすいオープンソースコード。これは現在、最も人気があり、最もよく使用されている XML 解析ツールであり、XML を最も速く解析します。

操作手順:

1: SAXReader の作成: SAXReader Reader = new SAXReader();

2: ファイル入力ストリームを作成し、XML ファイルを開きます: InputStream in = new FileInputStream( "XXX.xml");

3: リーダーと入力ストリームを通じて xml ファイルをメモリに読み取り、Document オブジェクトを作成します: Document dom = Reader.read(in);
4: ルート ノードを取得します:要素 root=dom.getRootElement( );
5: 子ノードのリストを取得します: List childNodes = root.elements();
6: 子ノードを走査します: Element node = childNodes.get( i);
7: ノード情報の読み取り:
1)、ノード属性値:node.attributeValue("属性名");
2)、ノード名:node.getName();
3)、ノード値:node.getValue();
4)、子ノードのテキスト値:node.elementText("子ノード名")

関連ビデオチュートリアルの推奨事項:「

XML チュートリアル」

"以上がこの記事の全内容です。皆様の学習のお役に立てれば幸いです。さらにエキサイティングなコンテンツについては、PHP 中国語 Web サイトの関連チュートリアルのコラムに注目してください。 ! !

以上がXML の 4 つの一般的な解析方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。