2016-08-30 37 views
2

私はXMLを含む文字列をJavaのDocument Objectに解析しようとしています。 [:ヌル#document]文字列をJavaのXML文書に解析するにはどうすればよいですか?

ん、私は常に、デバッガに応じてドキュメントの変数の値として何を得る

private Document getDocument(String xml) { 

    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); 
    DocumentBuilder builder = null; 

    try { 
     builder = factory.newDocumentBuilder(); 
    } catch (ParserConfigurationException e) { 
     e.printStackTrace(); 
    } 

    Document doc = null; 
    try { 
     doc = builder.parse(new InputSource(new StringReader(xml))); 
    } catch (SAXException e) { 
     System.out.println(e.toString()); 
    } catch (IOException e) { 
     System.out.println(e.toString()); 
    } 

    return doc; 
} 

次のとおりです。ここではメソッドのソースコードです誰が何が間違っているかの手がかりを持っている?

ありがとうございました!

+0

可能な重複[JavaでXMLを含む文字列を解析しての値を取得する方法ルートノード?](http://stackoverflow.com/questions/8408504/how-to-parse-a-string-containing-xml-in-java-and-retrieve-the-value-of-the-root) – DimaSan

答えて

2

これは、デバッガがを呼び出して、[node_name: node_value]を表示しているので正常です。文書ノードのノード値は、W3C specに従ってNULLです。ルート要素の名前を印刷する場合は、doc.getDocumentElement().getNodeName()と評価する必要があります。

+0

それは本当に答える価値がありますか?それは良いコメントに見えますが、本当に答えですか? – GhostCat

+0

ありがとう!あなたが正しいです。 –

1

XML文書を投稿して構造を確認するといいですが、これがXMLを読み取るための作業です。

その後、doc.getElementsByTagName("Root Node");を使用して、XMLのルートノードを取得できます。オブジェクトのプロパティをたくさん持っている、getFirstChild()またはgetChildNodes()がstrucureに応じて同様に、病気は、これを読むことをお勧め:

http://www.w3schools.com/xml/dom_intro.asp

関連する問題