この記事では主に、nodejs で XML 文字列をオブジェクトに解析する方法を紹介し、XML 形式の文字列を解析して変換するための nodejs の操作スキルについても説明します。必要な方は参考にしてください。
この記事の例では、nodejs の実装について説明します。 XML 文字の解析メソッド。参考のために皆さんと共有してください。詳細は次のとおりです:
var xmlreader = require("xmlreader"); var fs = require("fs"); var xml_string = '<response id="1" shop="aldi">' + 'This is some other content' + '<who name="james">James May</who>' + '<who name="sam">' + 'Sam Decrock' + '<location>Belgium</location>' + '</who>' + '<who name="jack">Jack Johnsen</who>' + '<games age="6">' + '<game>Some great game</game>' + '<game>Some other great game</game>' + '</games>' + '<note>These are some notes</note>' + '</response>'; xmlreader.read(xml_string, function(errors, response){ if(null !== errors ){ console.log(errors) return; } console.log( response.response ); console.log( response.response.text() ); });
新しいものはありません。出力を見てみましょう
最初の文の出力は次のとおりです:
{ attributes : [Function], parent : [Function], count : [Function], at : [Function], each : [Function], text : [Function], who : { array : [[Object], [Object], [Object]], count : [Function], at : [Function], each : [Function] }, games : { attributes : [Function], parent : [Function], count : [Function], at : [Function], each : [Function], game : { array : [Object], count : [Function], at : [Function], each : [Function] } }, note : { attributes : [Function], parent : [Function], count : [Function], at : [Function], each : [Function], text : [Function] } }
2 番目の文の出力:
This is some other content
出力に基づいて、これが何についてのものかを推測できます。
1. xmlreader
XML を JSON オブジェクトに変換します (この表現は正確ではありませんが、それが何であるかは誰もが知っています)。
2. 変換された JSON オブジェクトの入れ子構造は、元の XML タグの入れ子構造と同じです。
3. XML 内で特定のタグが同じレベルに出現する回数 (1 回と複数回) に応じて、上のノードは 1 回、who は 3 回生成されます。
4. 属性やトラバースなどを操作するためのいくつかの関数が提供されています。
各メソッドの意味:
1、attributes: すべての属性を取得します。
2、parent: 親ノードを取得します。
3、count: 番号を取得します。
4、at: 添字が指定された値であるノードを取得します。
5、each: トラバーサル、パラメーターは関数です。
6、text: ノード内のテキストを取得します。子ノードのテキストを除く、現在のノードのテキストのみです。
上記は私があなたのためにまとめたものです。
関連記事:
操作イベントコマンドng-clickを使って複数パラメータを渡すAngularの例
txtファイルのアップロードプレビュー機能を実装するJavaScriptコード
の例まとめAngularjs がコントローラー間の通信を実装する方法
以上がNodejsでXML文字列をオブジェクトに解析するメソッド例を実装の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。