XML字符串转换

时间:2010-11-10 18:48:08

标签: java xml string dom

我有以下XML字符串:

<persons>
    <person>
        <name>Someone</name>
        <age>27</age>
    </person>
    <person>
        <name>Otherone</name>
        <age>43</age>
    </person>
</persons>

我想接受这个字符串并从中获取一个DOM对象。它可以是任何XML字符串(不是来自文件!)。

对不起这个新手问题,非常感谢帮助。

2 个答案:

答案 0 :(得分:3)

org.w3c.dom.Document doc =
  javax.xml.parsers.DocumentBuilderFactory.newInstance().newDocumentBuilder(
        ).parse(
   new org.xml.sax.InputSource(new java.io.StringReader(xmlString)));

答案 1 :(得分:0)

试试这个:

import java.io.IOException;

import org.apache.xerces.parsers.DOMParser;
import org.w3c.dom.Document;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;



public class String2XML {

    public static void main(String[] args) throws SAXException, IOException {
        String xml="<persons><person><name>Someone</name><age>27</age></person><person><name>Otherone</name><age>43</age></person></persons>";
        DOMParser parser = new DOMParser();
        parser.parse(new InputSource(new java.io.StringReader(xml))); 
        Document doc = parser.getDocument();
        System.out.println("String2XML.main()-"+doc.toString());
    }
}

不要忘记在类路径中包含xercesImpl.jar和xml-apis.jar。您可以在http://archive.apache.org/dist/xml/xerces-j/binaries/

找到它们