http://lavasoft.blog.51cto.com/62575/347348
一、创建一个xml文档
- Document doc = DocumentHelper.createDocument() ;
Document doc = DocumentHelper.createDocument() ;
二、添加DocType
- doc.addDocType("plist", "-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd", null) ;
doc.addDocType("plist", "-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd", null) ;
生成文件
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
第一个参数:名称(上面的是plist)
第二个参数:PUBLIC URI
第三个参数:SYSTEM URI
三、不输出xml头部声明<?xml version="1.0" encoding="UTF-8"?>,需要配合OutputFormat一起进行设置
- // 进行标准xml样式的格式化
- OutputFormat format = OutputFormat.createPrettyPrint() ;
- // 不输出头部信息
- format.setSuppressDeclaration(true) ;
- // 将xml输出到outputStream中
- XMLWriter writer = new XMLWriter(outputStream,format) ;
- writer.write(doc) ;
// 进行标准xml样式的格式化 OutputFormat format = OutputFormat.createPrettyPrint() ; // 不输出头部信息 format.setSuppressDeclaration(true) ; // 将xml输出到outputStream中 XMLWriter writer = new XMLWriter(outputStream,format) ; writer.write(doc) ;
四、将document转换为string
- doc.asXML()
doc.asXML()
五、使用xpath进行元素的查找
- // 取得根节点
- Element root = doc.getRootElement();
- // xpath进行元素的选择 (./相对当前对象使用xpath进行元素的选择)
- Element array = (Element) root.selectSingleNode("./dict/array/dict/array/dict/dict/array") ;
- Element dict = (Element)array.selectSingleNode("./dict") ;
- // 删除子节点
- array.remove(dict) ;
-----------
java dom4j 解析xml字符串
相关推荐
4.DOM则为脚本和对象的交流提供一个公共平台,并将结果显示在浏览器窗口。 如果任何一个部分发生错误,都不会得到正确结果。 好了,看到这里,我们已经对XML是如何工作的有一个整体的大致的概念。通过这一章的...
// 每次循环将uta_temp转移至uta时的位置指示。 int i = 0; // 遍历每一页源代码时,每一页NodeList url_list的索引 int index = -1; // 记录前一页源代码中,每一页url_list的索引,url_list并非逐页追加 // ...
4. 多态性: 多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。 5、String是最...
28、设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。 以下程序使用内部类实现线程,对j增减的时候没有考虑顺序问题。 public class ThreadTest1{ private int j; public static ...