微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

向xml文档中指定位置上添加节点

	//向xml文档中指定位置上添加节点
	@Test
	public void add() throws SAXException,IOException,ParserConfigurationException,TransformerException{
		//1.创建工厂
		DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
		DocumentBuilder builder = factory.newDocumentBuilder();
		Document document = builder.parse("src/book.xml");
		
		//创建节点
		Element pricElement = document.createElement("插入");
		pricElement.setTextContent("这里");
		
		//得到参考节点
		Element refNodeElement = (Element) document.getElementsByTagName("售价").item(0);
		
		//得到要挂的子节点
		Element book = (Element) document.getElementsByTagName("书").item(0);
		
		//向book节点的指定位置插入
		//book.insertBefore(newChild,refChild);
		book.insertBefore(pricElement,refNodeElement);
		
		//把更新后的内存写回到xml
		TransformerFactory tFactory = TransformerFactory.newInstance();
		Transformer tf = tFactory.newTransformer();
		tf.transform(new DOMSource(document),new StreamResult(new FileOutputStream("src/book.xml")));
		
	}


<?xml version="1.0" encoding="UTF-8" standalone="no"?><书架>
	<书>
		<书名 name="xxxxx">lan</书名>
		<作者>lan</作者>
		<售价>100000000000000000元</售价>
	<二手价>88888888元</二手价></书>
	<书>
		<书名 name="yyyyy">lll</书名>
		<作者>lll</作者>
		<售价>200000000000000000元</售价>
	</书>
</书架>

原文地址:https://www.jb51.cc/xml/300417.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。