全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

java实现XML增加元素操作简单示例

本文实例讲述了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小时内与您取得联系。