- 授权协议: GPL
- 开发语言: Java
- 操作系统: 跨平台
- 软件首页: https://github.com/shenghai/xmodifier
- 软件文档: https://github.com/shenghai/xmodifier
软件介绍
xmodifier 是使用 XPATH 创建或者更 XML。XPATH 可以用来搜索 XML,但是有时候也可以用来编辑或者创建 XML:
| XPath | Value | Desc |
|---|---|---|
| /ns:root/ns:element1 | add <ns:element1/> | |
| /ns:root/ns:element2[@attr=1] | add <ns:element2 attr="1"/> | |
| /ns:root/ns:element2/@attr | 1 | add <ns:element2 attr="1"/> |
| /ns:root/ns:element1/ns:element11 | add <ns:element11/> | |
| /ns:root/ns:element3 | TEXT | add <ns:element3>TEXT</ns:element3> |
| /ns:root/ns:element1[ns:element12]/ns:element13 | add <ns:element13/> | |
| //PersonList/Person[2]/Name | NewName | set the second Person node's Name Text |
| //PersonList/Person[2]/Name/text() | NewName | set the second Person node's Name Text |
| //PersonList/Person[1]/Name(:delete) | delete this Name node | |
| //PersonList/Person(:add)/Name | NewName | alway add a new Person node |
| //PersonList/Person(:insertBefore(Person[Name='Name2']))/Name | NewName | add a new Person node before Person named "Name2" |
代码示例:
创建新的 XML
Document document = createDocument(); //empty document
XModifier modifier = new XModifier(document);
modifier.setNamespace("ns", "http://localhost");
// create an empty element
modifier.addModify("/ns:root/ns:element1");
// create an element with attribute
modifier.addModify("/ns:root/ns:element2[@attr=1]");
// append an new element to existing element1
modifier.addModify("/ns:root/ns:element1/ns:element11");
// create an element with text
modifier.addModify("/ns:root/ns:element3", "TEXT");
modifier.modify();
XML:
<root xmlns="http://localhost"> <element1> <element11/> </element1> <element2 attr="1"/> <element3>TEXT</element3> </root>
修改现有的 XML:
原始 XML:
<root xmlns="http://localhost"> <element1> <element11></element11> </element1> <element1> <element12></element12> </element1> <element2></element2> <element3></element3> </root>
Document document = readDocument("modify.xml");
XModifier modifier = new XModifier(document);
modifier.setNamespace("ns", "http://localhost");
modifier.addModify("/ns:root/ns:element1[ns:element12]/ns:element13");
modifier.modify();
修改之后的 XML:
<root xmlns="http://localhost"> <element1> <element11/> </element1> <element1> <element12/> <element13/> </element1> <element2/> <element3/> </root>
添加了新元素 ns:element13
ACM/ICPC程序设计与分析
沈云付 / 清华大学 / 2010-7 / 39.50元
《ACM/ICPC程序设计与分析(C++实现)》介绍ACM国际大学生程序设计竞赛概况及程序设计基础,系统介绍数论、组合数学、动态规划、计算几何、搜索、图论和网络流等专题的典型算法,挑选历年竞赛中许多有代表性的竞赛题作为例题进行分析,便于学生编程时模仿学习。每章的例题和习题都配有输入输出样例,方便学生在编程时测试与调试程序。《ACM/ICPC程序设计与分析(C++实现)》以C++为程序设计语言,以提......一起来看看 《ACM/ICPC程序设计与分析》 这本书的介绍吧!
