java之xml文件中删除节点

1 java读取xml格式的字符串。通过dom4j来读取。通过StringReader来。
如:String xmlString="<root id=\"aaaa\"><aa><a1>a1</a1><a2>a2</a2></aa><bb>bbb</bb></root>";
SAXReader saxReader=new SAXReader();
Document document=saxReader.read(new StringReader(xmlString));//通过StringReader来读取。将String转化为流


2 解析完xml格式的字符串之后。通过element(String  name)可以得到该节点。只能得到当前节点的子节点。不能得到当前节点的子节点的子节点
如:String xmlString="<root id=\"aaaa\"><aa><a1>a1</a1><a2>a2</a2></aa><bb>bbb</bb></root>";
SAXReader saxReader=new SAXReader();
Document document=saxReader.read(new StringReader(xmlString));
Element root=document.getRootElement();
  Element removeElement=root.element("aa");//得到子节点,是区分大小写的


3 如果想要删除某个子节点。先得到该子节点。然后再通过remove(Element element)来删除。参数为Element类型
如:String xmlString="<root id=\"aaaa\"><aa><a1>a1</a1><a2>a2</a2></aa><bb>bbb</bb></root>";
SAXReader saxReader=new SAXReader();
Document document=saxReader.read(new StringReader(xmlString));
Element root=document.getRootElement();
  Element removeElement=root.element("aa");
if(removeElement==null){//判断是否找到该子节点
root.remove(removeElement);//删除子节点
}


总结:element(name)得到子节点、remove(Element element) 删除子节点


完整的例子:
String xmlString="<root id=\"aaaa\"><aa><a1>a1</a1><a2>a2</a2></aa><bb>bbb</bb></root>";
SAXReader saxReader=new SAXReader();
try {
Document document=saxReader.read(new StringReader(xmlString));
Element root=document.getRootElement();
Element removeElement=root.element("aa");

if(removeElement==null){
System.out.println("未找到该节点");
}else{
root.remove(removeElement);
System.out.println("已删除");
System.out.println(document.asXML());
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值