本文实例讲述了java实现XML增加元素操作。分享给大家供大家参考,具体如下:
package Day01;
import java.io.*;
import javax.xml.parsers.*;
import javax.xml.transform.*;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.*;
public class CRUDDEMO {
/*public void addElement() throws Exception{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(new File ("src/Day01/Book.xml"));
Element newEle = doc.createElement("作者");
newEle.setTextContent("ZC");
Node nod = doc.getElementsByTagName("书").item(0);
nod.appendChild(newEle);
Source sour = new DOMSource(doc);
Result result = new StreamResult (new FileOutputStream("src/Day01/Book.xml"));
write (sour, result);
}*/
public void addElement2() throws Exception{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); //建立工厂
DocumentBuilder builder = factory.newDocumentBuilder(); //拿到builder
Document doc = builder.parse(new File ("src/Day01/Book.xml")); //获得document,这是终极目的
Element newEle = doc.createElement("作者");// 创建新元素/标签
newEle.setTextContent("ZC"); //给元素设置内容 <作者>ZC</作者>
Node nod = doc.getElementsByTagName("书名").item(0); //通过nodelist的item()方法获得具体节点
/**
* 在具体节点插入元素用 节点.insertBefore方法
* 第一个参数是要插入的新节点,第二个是插入的位置
*/
nod.insertBefore(newEle, doc.getElementsByTagName("书名").item(0));
/**
* DOMSource(Node n)
* 注意 element是Node的一个子类,所以可以把doc放入构造函数
*
*
*/
Source sour = new DOMSource(doc);
Result result = new StreamResult (new FileOutputStream("src/Day01/Book.xml"));
write (sour, result);
}
public void write(Source source,Result result) {
TransformerFactory tffactory = TransformerFactory.newInstance();
Transformer tr;
try {
tr = tffactory.newTransformer();
tr.transform(source, result);
} catch (TransformerConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (TransformerException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) throws Exception {
CRUDDEMO cr = new CRUDDEMO();
cr.addElement2();
}
}
修改前的XML:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<书架>
<书>
<书名>Thinking in Java</书名>
<作者>Eric</作者>
<售价>$34</售价>
</书>
</书架>
修改后的XML
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<书架>
<书>
<作者>ZC</作者>
<书名>Thinking in Java</书名>
<作者>Eric</作者>
<售价>$34</售价>
</书>
</书架>
PS:这里再为大家提供几款关于xml操作的在线工具供大家参考使用:
在线XML/JSON互相转换工具:
http://tools./code/xmljson
在线格式化XML/在线压缩XML:
http://tools./code/xmlformat
XML在线压缩/格式化工具:
http://tools./code/xml_format_compress
XML代码在线格式化美化工具:
http://tools./code/xmlcodeformat
希望本文所述对大家java程序设计有所帮助。
# java
# XML
# 增加
# 元素
# Java对XML文件增删改查操作示例
# Java操作XML工具类XmlUtil详解
# java使用DOM4J对XML文件进行增删改查操作
# java中四种操作xml方式的比较
# java使用jaxb操作xml示例
# java对XML文件的解析、节点的增加、删除操作总结
# java操作(DOM、SAX、JDOM、DOM4J)xml方式的四种比较与详解
# java操作xml的方法汇总及解析
# 这是
# 第一个
# 子类
# 第二个
# 给大家
# 所述
# 几款
# 程序设计
# 转换工具
# 再为
# 讲述了
# doc
# Document
# parse
# Book
# src
# File
# newDocumentBuilder
# factory
# DocumentBuilderFactory
相关文章:
如何通过云梦建站系统实现SEO快速优化?
C++如何编写函数模板?(泛型编程入门)
大连网站设计制作招聘信息,大连投诉网站有哪些?
建站主机与虚拟主机有何区别?如何选择最优方案?
小型网站建站如何选择虚拟主机?
如何快速生成高效建站系统源代码?
高防服务器:AI智能防御DDoS攻击与数据安全保障
个人网站制作流程图片大全,个人网站如何注销?
建站之星北京办公室:智能建站系统与小程序生成方案解析
专业制作网站的公司哪家好,建立一个公司网站的费用.有哪些部分,分别要多少钱?
如何配置WinSCP新建站点的密钥验证步骤?
,石家庄四十八中学官网?
建站之星安装失败:服务器环境不兼容?
网站图片在线制作软件,怎么在图片上做链接?
建站为何优先选择香港服务器?
学校建站服务器如何选型才能满足性能需求?
网站专业制作公司有哪些,做一个公司网站要多少钱?
常州企业网站制作公司,全国继续教育网怎么登录?
公司门户网站制作流程,华为官网怎么做?
独立制作一个网站多少钱,建立网站需要花多少钱?
建站之星后台密码遗忘或太弱?如何重置与强化?
C++用Dijkstra(迪杰斯特拉)算法求最短路径
洛阳网站制作公司有哪些,洛阳的招聘网站都有哪些?
国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?
网站制作多少钱一个,建一个论坛网站大约需要多少钱?
建站之星CMS五站合一模板配置与SEO优化指南
如何通过PHP快速构建高效问答网站功能?
,怎么在广州志愿者网站注册?
建站主机如何选?性能与价格怎样平衡?
,南京靠谱的征婚网站?
如何基于云服务器快速搭建个人网站?
建站之星客服服务时间及联系方式如何?
股票网站制作软件,网上股票怎么开户?
已有域名建站全流程解析:网站搭建步骤与建站工具选择
建站10G流量真的够用吗?如何应对访问高峰?
建站之星安装步骤有哪些常见问题?
企业微网站怎么做,公司网站和公众号有什么区别?
Python路径拼接规范_跨平台处理说明【指导】
韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐
如何高效生成建站之星成品网站源码?
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
如何快速启动建站代理加盟业务?
C#怎么使用委托和事件 C# delegate与event编程方法
如何选择域名并搭建高效网站?
c++怎么用jemalloc c++替换默认内存分配器【性能】
如何在Golang中使用encoding/gob序列化对象_存储和传输数据
清单制作人网站有哪些,近日“兴风作浪的姑奶奶”引起很多人的关注这是什么事情?
利用JavaScript实现拖拽改变元素大小
网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?
如何正确选择百度移动适配建站域名?
*请认真填写需求信息,我们会在24小时内与您取得联系。