Java关于xml文件中删除节点(以及子节点的子节点…以及类推n级子节点)
最近的项目中遇到一个webService接口接收xml文本获取子节点的子节点的需求,参考网上的方法,进行了一个优化和总结。
需要通过dom4j来解析xml格式的字符串,并且通过StringReader将String转化为流。
如:`
String xmlString="<root id=\\\"aaaa\\\">\n" +
" <aa>\n" +
" <a1>a1</a1>\n" +
" <a2>a2</a2>\n" +
" <a3>\n" +
" <a31>a31</a31>\n" +
" <a32>a32</a32>\n" +
" </a3>\n" +
" </aa>\n" +
" <bb>bbb</bb>\n" +
" </root>";
通过StringReader将String转化为流。
SAXReader saxReader=new SAXReader();
Document document=saxReader.read(new StringReader(xmlString));
当完成xml格式字符串解析后 ,通过element(String name) 可以得到该节点。(但是只能得到当前的子节点,无法得到子节点的子节点)
String xmlString="<root>\n" +
" <aa>\n" +
" <a1>a1</a1>\n" +
" <a2>a2</a2>\n" +
" <a3>\n" +
" <a31>a31</a31>\n" +
" <a32>a32</a32>\n" +
" </a3>\n" +
" </aa>\n" +
" <bb>bbb</bb>\n" +
" </root>";
SAXReader saxReader=new SAXReader();
try {
Document document=saxReader.read(new StringReader(xmlString));
Element root=document