dom4j转移字符问题

http://lavasoft.blog.51cto.com/62575/347348

一、创建一个xml文档

  1. Document doc = DocumentHelper.createDocument() ;  
Document doc = DocumentHelper.createDocument() ;


二、添加DocType

  1. 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) ;

生成文件

  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!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一起进行设置

 

  1. // 进行标准xml样式的格式化   
  2. OutputFormat format = OutputFormat.createPrettyPrint() ;  
  3. // 不输出头部信息   
  4. format.setSuppressDeclaration(true) ;  
  5. // 将xml输出到outputStream中   
  6. XMLWriter writer = new XMLWriter(outputStream,format) ;  
  7. writer.write(doc) ;  
		// 进行标准xml样式的格式化
		OutputFormat format = OutputFormat.createPrettyPrint() ;
		// 不输出头部信息
		format.setSuppressDeclaration(true) ;
		// 将xml输出到outputStream中
		XMLWriter writer = new XMLWriter(outputStream,format) ;
		writer.write(doc) ;

四、将document转换为string
扫描二维码关注公众号,回复: 754515 查看本文章
  1. doc.asXML()  
doc.asXML()

 

五、使用xpath进行元素的查找
  1. // 取得根节点   
  2. Element root = doc.getRootElement();  
  3.   
  4. // xpath进行元素的选择 (./相对当前对象使用xpath进行元素的选择)   
  5. Element array = (Element) root.selectSingleNode("./dict/array/dict/array/dict/dict/array") ;  
  6. Element dict = (Element)array.selectSingleNode("./dict") ;  
  7.   
  8. // 删除子节点   
  9. array.remove(dict) ; 

-----------

java dom4j 解析xml字符串

猜你喜欢

转载自xueqi.iteye.com/blog/1834012