<?xml version="1.0" encoding="utf-8" standalone="no"?>
<ShowList><Movie><Name>不二神探</Name><Poster>不二神探.jpg</Poster><Director>王子鸣</Director><Actor>李连杰、文章、陈妍希</Actor><Type>Action</Type><Price>60</Price><Schedule><Item>00:00</Item><Item>00:00</Item><Item>10:00</Item><Item>13:00</Item><Item>12:00</Item></Schedule></Movie><Movie><Name>西游降魔篇</Name><Poster>西游降魔篇.jpg</Poster><Director>郭子健、周星驰</Director><Actor>黄渤、舒淇、文章</Actor><Type>Comedy</Type><Price>60</Price><Schedule><Item>11:20</Item><Item>15:45</Item><Item>19:25</Item></Schedule></Movie><Movie><Name>中国合伙人</Name><Poster>中国合伙人.jpg</Poster><Director>陈可辛</Director><Actor>黄晓明、邓超、佟大为</Actor><Type>Comedy</Type><Price>70</Price><Schedule><Item>21:00</Item><Item>23:10</Item></Schedule></Movie><Movie><Name>钢铁侠3</Name><Poster>钢铁侠3.jpg</Poster><Director>沙恩布莱克</Director><Actor>小罗伯特唐尼</Actor><Type>Action</Type><Price>70</Price><Schedule><Item>17:30</Item></Schedule></Movie>
</ShowList>

1.读取XML文档

//创建一个Document解析器工厂
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
//通过工厂创建一个XML解析器对象
DocumentBuilder builder = factory.newDocumentBuilder();
//解析指定XML文件并且生成Document对象
Document doc = builder.Parse("D://schema.xml");

2.保存XML文档

//通过TransFormer保存DOM树//创建TransFormer工厂对象
TransFormerFactory tfFactory = TransFormerFactory.newInstance();
//获取TransFormer对象
TransFormer tf = tfFactory.newTransFormer();
//将DOM树保存为文件
tf.transForm(new DOMSource(doc),new StreamResult("D://schema.xml"));

3.添加XML节点

//在第一个电影节点添加一个放映时间子节点//创建一个XML节点
Element node = doc.createElement("Item");
//设置XML节点内容
node.setTextContent("00:00");
//获得要插入节点的父节点
Element parentNode = (Element)doc.getElementsByTagName("Schedule").item(0);
//添加到父节点的结尾
parentNode.appendChild(node);

4.修改XML节点

//将第一个电影节点的第一个放映场次修改为12:00//获取要修改的XML节点
Element movieNode = (Element)doc.getElementsByTagName("Movie").item(0);
Element scheNode = (Element)movieNode.getElementsByTagName("Schedule").item(0);
Element itemNode = (Element)scheNode.getElementsByTagName("Item").item(0);
//修改XML节点内容
itemNode.setTextContent("12:00");

5.删除XML节点

//删除第一部电影的第一个场次//获取要删除的XML节点和它的父节点
Element movieNode = (Element)doc.getElementsByTagName("Movie").item(0);
Element parentNode = (Element)movieNode.getElementsByTagName("Schedule").item(0);
Element node = (Element)parentNode.getElementsByTagName("Item").item(0);//删除XML节点
parentNode.removeChild(node);

【JAXP】Dom方式解析XML文件相关推荐

  1. JavaXml教程(二)使用DOM方式解析XML文件

    DOM XML 解析方式是最容易理解的,它將XML文件作为Document对象读取到内存中,然后你可以轻松地遍历不同的元素和节点对象.遍历元素和节点不需要按照顺序进行. DOM解析方式适合尺寸较小的X ...

  2. DOM方式解析XML文件实例

    books.XML文件: <?xml version="1.0" encoding="utf-8"?> <bookstore>      ...

  3. Android中使用SAX方式解析XML文件

    转载http://blog.csdn.net/cjjky/article/details/6666834 在Android中解析XML文主要有三种方式,分别为Simple API for XML(SA ...

  4. php xml expat,php 使用expat方式解析xml文件操作示例

    本文实例讲述了php 使用expat方式解析xml文件操作.分享给大家供大家参考,具体如下: test.xml: George John Reminder George2 John2 Reminder ...

  5. JavaXml教程(五)使用SAX方式解析XML文件

    Java SAX解析机制为我们提供了一系列的API来处理XML文件,SAX解析和DOM解析方式不太一样,它并不是將XML文件内容一次性全部加载,而是连续的部分加载. javax.xml.parsers ...

  6. JavaXml教程(三)使用DOM方式修改XML文件内容

    DOM解析方式也可用于修改XML数据,我们可以使用它完成新增元素.删除元素.修改元素值.修改元素属性等操作. 我们的XML文件,内容如下: employee.xml <?xml version= ...

  7. JavaXml教程(四)使用DOM方式生成XML文件

    在前面的教程中,我们学习了使用DOM解析方式读取和修改XML文件内容,今天我们来学习如何使用DOM解析机制生成XML文件. 下面是我们对要生成的XML文件的具体要求: 1.根节点元素为"Em ...

  8. Java DOM方式解析XML(模板)

    1 //创建一个DocumentBuilderFactory工厂实例 2 DocumentBuilderFactory DBF=DocumentBuilderFactory.newInstance() ...

  9. java解析xml文档_Java解析xml文件

    读xml文件: xml文件内容: Java Eclipse Swift Xcode C# Visual Studio 代码: package XMLParse; import java.io.File ...

  10. Android学习笔记---Android平台1.使用dom解析xml文件

    1.使用dom解析xml文件 除了使用 SAX可以解析XML文件,大家也可以使用熟悉的DOM来解析XML文件. DOM解析XML文 件时,会将XML文件的所有内容以文档树方式存放在内存中,然后允许您使 ...

最新文章

  1. 《系统集成项目管理工程师》必背100个知识点-56X理论和Y理论
  2. C语言标准库<string.h>
  3. python学习if语句_python学习之if语句
  4. 事务的隔离级别与锁的申请和释放
  5. HDOJ 1754 I Hate It 解题报告
  6. 新手填坑 java.lang.Integer cannot be cast to java.lang.String
  7. Tomcat下使用 telnet命令连接
  8. html5怎么插入一段文字,HTML5教程—文字插入进度动画_HTML5教程_文字插入_动画进度_课课家...
  9. 荣耀手机安装谷歌框架_华为荣耀9青春版安装谷歌框架 无需Root 华为荣耀手机安装谷歌框架...
  10. 混合线性模型笔记1:模型假定
  11. 回车、换行、回车换行、硬回车以及软回车
  12. 滴滴宋世君:数据分析师究竟是做什么的?
  13. 多张图片合成一张jpg工具_将多张图片合并成一张图片的小工具Collagerator
  14. 用计算机怎么计算字节,计算机硬盘容量大小怎么计算
  15. shell命令之nm
  16. 【Java】JDK安装在D盘,环境变量如何配置?
  17. 编程初学者的一些学习干货笔记
  18. iPhone 13维修换屏问题:芯片决定面容ID“生死”
  19. PostgreSQL + Postgis
  20. 软考中级软件设计师--8.信息安全

热门文章

  1. 不翻墙 轻松打开github
  2. mysql 5.7 安装tokudb_安装Percona-Server-5.7.18+tokudb
  3. 手机蓝牙绑定pc,离开电脑自动锁屏
  4. 最小割集stoer_wagner算法
  5. Python_输入年月日计算是今年第几天 考虑闰年二月29天,平年28天
  6. 软件著作权 php代码行数,申报软件著作权时,如何快捷计算源码行数
  7. 用户行为序列推荐模型
  8. 搜索引擎原理第一阶段之爬行和抓取
  9. 工业以太网交换机特点分析及使用注意事项
  10. ps换脸教程:ps换脸教程步骤具体,怎样选择复制层