2016-06-01 6 views
1

私はXMLドキュメントを解析するのが初めてです。XMLタグ(Element)にSAXパーサーを使用して子があるかどうかを識別する方法

私はXML文書を解析しており、そのXMLファイルに基づいて独自のJSONを作成したいと考えています。その理由のために、xmlタグに子があるかどうかを確認したいのですか?

は私がたDefaultHandlerクラスを拡張してのstartElement()のContentHandler方法をオーバーライドしています。このよう

コード:私は間違っているつもりだ場合

@Override 
public void startElement(String uri, String localName,String qName,Attributes attributes){ 
    if(qName has a child){ 
     //perform 1st task 
    } else { 
     //perform 2nd task 
    } 
} 

は、このタスクを行うと、私を導くために私を助けてください?

答えて

0

文書が小さい場合は、DOMパーサーを使用すると作業が簡単になります。

SAXパーサーを使用することが必須の場合は、endElementメソッドもオーバーライドする必要があります。次に、同じ要素の開始要素と終了要素の間で、すべてのstartElementイベントは子要素に関連付けられます。

+0

私のドキュメントが大きいので、私はSAXパーサーを使用することに決めました。いいですが、どのようにタグが子を持つかどうかを特定できますか?なぜなら、startElementメソッドとendElementメソッドは、各Elementに対して毎回呼び出されるからです。 – ketan

+0

@ ketan - SAXで、あなたは親子関係を見つけようとするなど、多くの不平を言って仕事をする必要があります...サックスの構文解析のショートカットはありませんか?あなたのXMLファイルの大きさはどれくらいですか? –

+0

この作業は、大規模なxmlファイルの場合、becoz DOMだけがSAXパーサを使用して行いたいものです。 SAXの親子関係を特定する方法はありますか? plsはこの解決策を提供します – ketan

関連する問題