2017-02-21 104 views
1

的字符串可以说我有一些XML:JDOM获取包含内容

<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>")); 

,我现在需要得到

回答

2

这是非常不寻常的需要的内容像您想要的那样获取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