JDOM获取包含内容的字符串

时间:2017-02-21 13:54:25

标签: java xml jdom

假设我有一些xml:

<document>blabla<bold>test<list><item>hello<italics>dfh</italics></item></list></bold>sdfsd</document>

我现在需要获取字符串的内容,所以我会

blabla<bold>test<list><item>hello<italics>dfh</italics></item></list></bold>sdfsd

我已经在脑子里乱了一会儿,我似乎无法弄明白。

希望得到我必须做的一些指示。

编辑:

为了清楚起见,让我说我有这样的XML:

SAXBuilder sb = new SAXBuilder();
Document doc = sb.build(new StringReader("<document>blabla<bold>test<list><item>hello<italics>dfh</italics></item></list></bold>sdfsd</document>"));

我现在需要获取

的内容

1 个答案:

答案 0 :(得分:3)

需要获得所需的XML文档的不一致子集是非常罕见的。获取文本内容更为常见:blabla test hello dfh sdfsd

请注意,您可以获取内容的子集作为根元素的“contentlist”,然后将该列表作为字符串输出:

    XMLOutputter xout = new XMLOutputter();
    String txt = xout.outputString(doc.getRootElement().getContent());
    System.out.println(txt);

对我来说,我写了代码:

public static void main(String[] args) throws JDOMException, IOException {
    SAXBuilder sb = new SAXBuilder();
    Document doc = sb.build(new StringReader("<document>blabla<bold>test<list><item>hello<italics>dfh</italics></item></list></bold>sdfsd</document>"));

    XMLOutputter xout = new XMLOutputter();
    String txt = xout.outputString(doc.getRootElement().getContent());
    System.out.println(txt);        
}

并输出:

blabla<bold>test<list><item>hello<italics>dfh</italics></item></list></bold>sdfsd