XML.04-dom4j和XPath
body, td { 基本的解析 读取一个元素 在元素末尾添加子元素 在任意位置添加子元素 在任意位置添加,这回真的是任意位置了…dom4j并没有提供insertBefore这种方法,但是我们通过elements()方法拿到的一个list真的是个list…所以可以直接add进去. 删除一个元素 elements()方法,只是查找当前元素的下一级的子元素,注意注释那一行,刚开始写错了,而且神奇的是这玩意儿没找到也不报错… 修改一个元素 回写 XPATH是在XML中查找信息的一种语言,通过它可以很方便快捷精确的找到一个元素. XPath中有七种节点: 元素,属性,文本,命名空间,处理指令,注释以及文档(根节点) XML文档是被当作一个树对待的,文档节点也就是所谓的根节点. 其他的叫法都遵循树的原则. 比如 用来查找特定条件的节点,写在方括号里 比如: 可以使用| 来选取若干路径,比如 再复杂的就去看W3school吧… dom4j是支持XPath的,需要导入jaxen包 仅可以使用的两个方法: 不多做解释. 本文主要涉及:xml概念描述,xml的约束文件,dtd,xsd文件的定义使用,如何在xml中引用xsd文件,如何使用java解析xml,解析xml方式dom sax,dom4j解析xml文件 XML来 ... 由于DOM4J在解析XML时只能一层一层解析,所以当XML文件层数过多时使用会很不方便,结合XPATH就可以直接获取到某个元素 使用dom4j支持xpath的操作的几种主要形式 第一种形式 ... 最近研究java的dom4j包,使用 dom4j包来操作了xml 文件 包括三个文件:studentInfo.xml(待解析的xml文件), Dom4jReadExmple.java(解析的主要类), ... 如果一个xml文件没有引入约束,或者引入的是DTD约束时,那么使用dom4j和xpath是可以正常解析的,不引入约束的情况本文不再展示. 引入DTD约束的情况 mybook.dtd: <?xml ... 1 XML基础 1)XML的作用 1.1 作为软件配置文件 1.2 作为小型的"数据库" 2)XML语法(由w3c组织规定的) 标签: 标签名不能以数字开头,中间不能有空格,区分大 ... * 使用dom4j解析xml 实例在java520里面 TextDom4j * dom4j,是一个组织,针对xml解析,提供解析器dom4j * dom4j不是javase的一部分,想要使用第一步需要 ... *1 dom4j解析器 1)CRUD的含义:CreateReadUpdateDelete增删查改 2)XML解析器有二类,分别是DOM和SAX(simple Api for xml). ... Dom4j: Dom SUN dom在加载时,将所有元素全部加载内存 DOM4j - 第三方. Dom4j是一个开源.灵活的XML API. 目前很多开源框架如struts,hibernate都使用d ... DOM4J技术解析XML文件 一,XML简介 xml (可扩展标记语言) 全称: Extended Markup Language 可扩展的含义:允许程序员按照自己的想法去扩展新的标签 注意:但是扩 ... Element root = document.getRootElement(); List recordenvlist = document.selectNodes("//gm ... 最近这一拔VR及AR浪潮得到业界的热捧,与2015年年底到2016年年初乐相.蚁视.睿悦.焰火工坊等VR创业公司,陆续发布融资的信息不无关系.业界也有统计数据称,约90%的VR投资案例,发生在2015 ... 转自:http://www.cnblogs.com/LMySQL/p/5060604.html 前言:假设如果有个服务器几十个链接突然达到上千个链接,show processlist,general_ ... 首先查看程序是否安装,以mariadb 为例 卸载程序 ......... /* * Random:产生随机数的类 * * 构造方法: * public Random():没有给种子,用的是默认种子,是当前时间的毫秒值 * public Random(long seed):给 ... // 计入导航控制器时,要使得底部的TabBar消消失 test.hidesBottomBarWhenPushed = YES; /** * 布局子控件 */ - (void)layoutSubvi ... openssl生成ssl证书 x509证书一般会用到三类文,key,csr,crt. Key 是私用密钥openssl格,通常是rsa算法. Csr 是证书请求文件,用于申请证书.在制作csr文件的时 ... mysql 多表 update 有几种不同的写法. 假定我们有两张表,一张表为Product表存放产品信息,其中有产品价格列Price:另外一张表是ProductPrice表,我们要将ProductP ... 今天看到有人在问用代码执行CMD命令的问题,就总结一下用法,也算做个备忘. Delphi中,执行命令或者运行一个程序有2个函数,一个是winexec,一个是shellexecute.这两个大家应该都见 ... I have a Retina Display and Eclipse looks blurry. How can I fix it? You need to tell Mac OS that Ecl ... 以前获取应用的大小是用 PackageManager mPackageManager= getPackageManager(); try {Method getPackageSizeInfoMetho ...
font-family: calibri;
font-size: 10pt;
}
dom4j的基本使用
1. public Document parseDoc(String filePath) throws DocumentException {
2. return new SAXReader().read(filePath);
3. }1. public void getElement() throws DocumentException{
2.
3. Document document = parseDoc(path);
4. Element root = document.getRootElement();
5. List<Element> books = root.elements("书");
6. Element book2 = books.get(1);
7. Element author2 = book2.element("作者");
8. System.out.println(author2.getText());
9.
10. }1. public void addElement() throws Exception{
2. Document document= parseDoc(path);
3. Element root = document.getRootElement();
4. Element book2 = (Element)root.elements("书").get(1);
5. book2.addElement("cat").setText("I am a cat");
6. writeBack(document, path);
7. }1. public void insertElement() throws Exception{
2. Document document = parseDoc(path);
3. Element root = document.getRootElement();
4. Element book2 = (Element)root.elements("书").get(1);
5. List<Element> list = book2.elements();
6. Element cat = DocumentHelper.createElement("cat2");
7. cat.setText("I am a cat too");
8. list.add(1, cat);
9. writeBack(document, path);
10. }1. public void removeElement() throws Exception{
2. Document document = parseDoc(path);
3. Element root = document.getRootElement();
4. Element book2 = (Element)root.elements("书").get(1);
5. //Element cat = root.element("cat2");
6. Element cat = book2.element("cat2");
7. book2.remove(cat);
8. writeBack(document, path);
9.
10. }1.public void changeElement() throws Exception{
2. Document document = parseDoc(path);
3. Element root = document.getRootElement();
4. Element book2 = (Element)root.elements("书").get(1);
5. Element author2 = book2.element("作者");
6.
7. author2.setText("西川结衣");
8. writeBack(document, path);
9. }1. public void writeBack(Document document,String filePath) throws Exception{
2. OutputFormat format = OutputFormat.createPrettyPrint();
3. format.setEncoding("UTF-8");
4. XMLWriter writer = new XMLWriter(new FileOutputStream(filePath), format);
5. writer.write(document);
6. writer.close();
7. }XPath
啥是XPath
XPath语法
路径表达式
表达式
描述
nodeName
选取此节点的所有子节点
/
从根节点开始匹配
//
从匹配选择的当前节点选择,不考虑位置
.
当前节点
..
当前节点的父节点
@
属性
谓语
通配符
选取若干路径
Dom4j对XPATH的支持
XML.04-dom4j和XPath的更多相关文章
随机推荐