XML在标签下添加节点


//在第一个p1小面末尾添加<sex>nv</sex>

public static void addsex() throws Exception {
// TODO Auto-generated method stub
/*
* 1.创建解析器工厂
* 2.根据解析器工厂创建解析器
* 3.解析xml返回document
* 4.得到p1
*  -使用所有p1,使用item方法下标得到
* 5.创建sex标签 createElement
* 6.创建文本createTextNode
* 7.把文本添加到sex下面appendChild
* 8.把sex添加到第一个p1下面 
* 9.回写xml
*/
//创建解析器工厂
DocumentBuilderFactory builderFactory=DocumentBuilderFactory.newInstance();
//创建解析器
DocumentBuilder builder=builderFactory.newDocumentBuilder();
//解析xml,得到document
Document document= builder.parse("src/day1/person.xml");
//得到所有p1
NodeList list = document.getElementsByTagName("p1");
//得到第一个p1
Node p1=list.item(0);
//创建标签
Element sex1= document.createElement("sex");
//创建文本
Text text1=document.createTextNode("nv");
//吧文本添加到sex1下面
sex1.appendChild(text1);
//吧sex1添加到p1下
p1.appendChild(sex1);
//回写xml
TransformerFactory transformerFactory=TransformerFactory.newInstance();
javax.xml.transform.Transformer transformer=transformerFactory.newTransformer();
transformer.transform(new DOMSource(document),new StreamResult("src/day1/person.xml"));

}


这是person代码

<?xml version="1.0" encoding="UTF-8" standalone="no"?><person>
<p1>
<name>张三</name>
<age>20</age>
<sex>nv</sex>
</p1>
<p1>
<name>李四</name>
<age>30</age>
</p1>
</person>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值