Строковое преобразование XML - PullRequest
1 голос
/ 10 ноября 2010

У меня есть следующая строка XML:

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

Я хочу взять эту строку и получить из нее объект DOM.Это может быть любая строка XML (не из файла!).

Извините за этот вопрос новичка, большое спасибо за помощь.

Ответы [ 2 ]

3 голосов
/ 10 ноября 2010
org.w3c.dom.Document doc =
  javax.xml.parsers.DocumentBuilderFactory.newInstance().newDocumentBuilder(
        ).parse(
   new org.xml.sax.InputSource(new java.io.StringReader(xmlString)));
0 голосов
/ 10 ноября 2010

Попробуйте это:

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/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...