DOM 添加 / 更新 / 删除 XML (CURD)

获得Document

/**
     * 获取文档
     * 1、获得实例工厂
     * 2、获得解析器
     * 3、获得document
     */

添加结点

/**
     * 1、获得根结点
     * 2、创建结点(设置属性)
     * 3、创建子节点()
     * 4、添加到根节点
     */

更新结点

/**
     * 更新XML
     * 1、获得所有结点
     * 2、获得每一本书
     * 3、获得ID
     * 4、更新
     *     *1、更新id
     *     *2、更新子节点
     */

删除结点

/**
     * 删除XML
     * 1、获得所有结点
     * 2、获得每一本书
     * 3、获得ID
     * 4、删除
     */

保存XML

/**
     * 保存xml
     * 1、获得持久化对象实例工厂
     * 2、获得持久化对象
     * 3、将内存数据保存到磁盘
     *     *源————将document对象封装到Source
     *     *结果————将文件路径封装到Result
     * 4、保存
     */

  1 public static void main(String[] args) throws Exception {
  2         //获取document
  3         Document document=getDocument();
  4         //更新xml
  5         //UpdateXml(document);
  6
  7         //添加XML
  8
  9         //AddXML(document);
 10
 11
 12         //删除xml
 13         //DeleXML(document);
 14
 15
 16
 17         /**
 18          * 保存
 19          */
 20         Save(document);
 21
 22     }
 23
 24     /**
 25      * 1、获得根结点
 26      * 2、创建结点(设置属性)
 27      * 3、创建子节点()
 28      * 4、添加到根节点
 29      */
 30     private static void AddXML(Document document) {
 31         Element rootElement=document.getDocumentElement();
 32
 33         Element newElement=document.createElement("book");
 34
 35         newElement.setAttribute("id", "b003");
 36
 37         Element PriceElement=document.createElement("title");
 38         PriceElement.setTextContent("30");
 39         PriceElement.setAttribute("unit", "¥");
 40         newElement.appendChild(PriceElement);
 41
 42         rootElement.appendChild(newElement);
 43     }
 44
 45     /**
 46      * 删除XML
 47      * 1、获得所有结点
 48      * 2、获得每一本书
 49      * 3、获得ID
 50      * 4、删除
 51      */
 52
 53     private static void DeleXML(Document document) {
 54         NodeList nodeList=document.getElementsByTagName("book");
 55         for (int i = 0; i < nodeList.getLength(); i++) {
 56             Node chilNode=nodeList.item(i);
 57             String id=((Element)chilNode).getAttribute("id");
 58             if("b001".equals(id))
 59             {
 60                 Node parentNode=chilNode.getParentNode();
 61                 parentNode.removeChild(chilNode);
 62             }
 63         }
 64     }
 65
 66     /**
 67      * 更新XML
 68      * 1、获得所有结点
 69      * 2、获得每一本书
 70      * 3、获得ID
 71      * 4、更新
 72      *  *1、更新id
 73      *  *2、更新子节点
 74      */
 75     private static void UpdateXml(Document document) {
 76         NodeList nodeList=document.getElementsByTagName("book");
 77         for (int i = 0; i < nodeList.getLength(); i++) {
 78             Node node=nodeList.item(i);
 79             Element element=(Element) node;
 80             String id=element.getAttribute("id");
 81             if("b001".equals(id))
 82             {
 83                 //element.setAttribute("id", "booooo"); //更新id值
 84                 NodeList childNode=element.getElementsByTagName("title");
 85                     Element childElement=(Element) childNode.item(0);//childNode.getLength()=1
 86                         childElement.setTextContent("Java核心技术");
 87             }
 88         }
 89     }
 90
 91     /**
 92      * 保存xml
 93      * 1、获得持久化对象实例工厂
 94      * 2、获得持久化对象
 95      * 3、将内存数据保存到磁盘
 96      *   *源————将document对象封装到Source
 97      *   *结果————将文件路径封装到Result
 98      * 4、保存
 99      */
100     private static void Save(Document document)
101             throws Exception {
102         TransformerFactory factory=TransformerFactory.newInstance();
103         Transformer transformer=factory.newTransformer();
104         Source xmlSource=new DOMSource(document);
105         javax.xml.transform.Result outputTarget=new StreamResult("books.jaxp.xml");
106
107         transformer.transform(xmlSource, outputTarget);
108
109         System.out.println("done");
110     }
111
112     /**
113      * 获取文档
114      * 1、获得实例工厂
115      * 2、获得解析器
116      * 3、获得document
117      */
118
119     private static Document getDocument() throws ParserConfigurationException,
120             SAXException, IOException {
121         DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
122         DocumentBuilder builder=factory.newDocumentBuilder();
123         Document document=builder.parse("books.xml");
124         return document;
125     }
时间: 2024-09-29 03:31:52

DOM 添加 / 更新 / 删除 XML (CURD)的相关文章

Dom4j 添加 / 更新 / 删除 XML

1.获得文档 /** *1.获得解析流 *2.解析XML */ 2.添加 /** *1.获取父元素 *2.创建元素 *3.创建属性并添加到元素中 *4.元素添加到根节点 */ 3.更新 /** *1.获取结点 *2.转化为元素 *3.获取子元素 *4.更改 */ 4.删除 /** *1.获得结点 *2.转换为元素 *3.获得父元素 *4.移除 */ 5.保存 /** *1.创建输出对象 *2.添加内容对象 *3.关闭输出流 */ 获得文档 //获取文档 private static Docume

Mysql添加更新删除数据-表

例如 此处拥有一个表名为 uuser 为表添加新数据 1 insert into uuser values(1,'小王','111'); 2 insert into uuser values(2,'小张','111'); 3 insert into uuser values(3,'小六','111'); 假如只想添加uid和uname 1 insert into uuser(uid,uname) values(1,'小张'); 那么pas自动填充为NULL. 为表更新数据 这里把小王的pas改成

数据的添加更新删除

1.添加数据在添加新记录之前需要先创建一个数据库itcast,创建数据库的SQL语句如下所示:mysql> CREATE DATABASE itcast;Query OK, 1 row affected 选择使用数据库itcast,SQL语句如下:mysql> USE itcast;Database changed 在数据库中创建一个表student1_tb用于存储学生信息,创建student_tb表的SQL语句如下所示:mysql> CREATE TABLE student1_tb  

Dom解析XML(添加,删除,修改,保存)

//XML文件 <?xml version="1.0" encoding="UTF-8" ?><PhoneInfo> <Brand name="华为"> <Type name="P9"> <title>标题信息</title> </Type> </Brand> <Brand name="苹果"> &l

(转载)html dom节点操作(获取/修改/添加或删除)

DOM 是关于如何获取.修改.添加或删除 HTML 元素的标准,下面为大家介绍下html dom节点操作,感兴趣的朋友可以参考下 HTML DOM 是关于如何获取.修改.添加或删除 HTML 元素的标准.在 HTML DOM 中,所有事物都是节点.DOM 是被视为节点树的 HTML. 根据 W3C 的 HTML DOM 标准,HTML 文档中的所有内容都是节点: 整个文档是一个文档节点 每个 HTML 元素是元素节点 HTML 元素内的文本是文本节点 每个 HTML 属性是属性节点 注释是注释节

C# 添加,修改,删除Xml节点 摘录

http://blog.csdn.net/zth603/article/details/5743880 C# 添加,修改,删除Xml节点 //添加xml节点    private void AddXml(string image, string title)     {        XmlDocument xmlDoc = new XmlDocument();        xmlDoc.Load(Server.MapPath("../flash/dati.xml")); XmlNo

Javascript DOM 03 表格添加、删除 + 搜索

获取 tBodies.tHead.tFoot.rows.cells 隔行变色 鼠标移入高亮 添加.删除一行 DOM方法的使用  添加.删除 1 <script> 2 window.onload=function (){ 3 /*var str='abcdef'; 4 alert(str.search('g')); //找到并且返回字符串出现的位置,如果没找到-1 5 */ 6 /* 7 var str='abc 123 ert'; 8 var arr=str.split(' '); 9 ale

XML节点进行添加,删除,查找和删除操作

从网上整理所得 XMLDocument来操作XML比较简单,虽然有时效率不是很高.代码如下 已知有一个XML文件(bookstore.xml)如下: <?xml version="1.0" encoding="gb2312"?><bookstore> <book genre="fantasy" ISBN="2-3631-4"> <title>Oberon's Legacy<

ArcGIS Engine效率探究——要素的添加和删除、属性的读取和更新

ArcGIS Engine效率探究——要素的添加和删除.属性的读取和更新 来自:http://blog.csdn.net/freewaywalker/article/details/23703863 分类: ArcNotes2014-04-14 20:56 1781人阅读 评论(0) 收藏 举报 1. 要素的添加 ArcGIS Engine中,主要有两个方法用于要素的添加: Using IFeatureClass.CreateFeature followed by IFeature.Store