1. import java.util.Iterator;
  2. import java.util.List;
  3. import org.dom4j.Document;
  4. import org.dom4j.DocumentException;
  5. import org.dom4j.DocumentHelper;
  6. import org.dom4j.Element;
  7.  
  8. /**
  9. *
  10. * @author y
  11. */
  12. public class Test {
  13.  
  14. /**
  15. * @param args the command line arguments
  16. */
  17. public static void main(String[] args) throws DocumentException {
  18. test3();
  19. }
  20.  
  21. public static void test3() throws DocumentException{
  22. String str = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" +
  23. "<books>" +
  24. " <book>" +
  25. " <name>Think in Java</name>" +
  26. " <price>120.0</price>" +
  27. " <chapters>"+
  28. " <c>001</c>"+
  29. " <c>002</c>"+
  30. " <c>003</c>"+
  31. " </chapters>"+
  32. " </book>" +
  33. " <book>" +
  34. " <name>Think in Java2</name>" +
  35. " <price>220.0</price>" +
  36. " </book>" +
  37. "</books>";
  38. Document doc = DocumentHelper.parseText(str);
  39. Element books = doc.getRootElement();
  40. List<Element> childEles = books.elements();
  41. Iterator<Element> iter = childEles.iterator();
  42. while(iter.hasNext()){
  43. Element book = iter.next();
  44.  
  45. Element name = book.element("name");
  46. Element price = book.element("price");
  47.  
  48. System.out.println("name:"+name.getText()+",price:"+price.getText());
  49.  
  50. Element chapters = book.element("chapters");
  51. if(null!=chapters){
  52. Iterator<Element> chaptersIter= chapters.elementIterator();
  53. if(null!=chaptersIter){
  54. while(chaptersIter.hasNext()){
  55. Element c = chaptersIter.next();
  56. System.out.println("===>"+c.getText());
  57. }
  58. }
  59. }
  60.  
  61. }
  62. }
  63.  
  64. public static void test2() throws DocumentException{
  65. String str = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" +
  66. "<books>" +
  67. " <book>" +
  68. " <name>Think in Java</name>" +
  69. " <price>120.0</price>" +
  70. " </book>" +
  71. " <book>" +
  72. " <name>Think in Java2</name>" +
  73. " <price>220.0</price>" +
  74. " </book>" +
  75. "</books>";
  76.  
  77. Document doc = DocumentHelper.parseText(str);
  78.  
  79. Element books = doc.getRootElement();
  80.  
  81. List<Element> childEles = books.elements();
  82. Iterator<Element> iter = childEles.iterator();
  83. while(iter.hasNext()){
  84. Element book = iter.next();
  85.  
  86. Element name = book.element("name");
  87. Element price = book.element("price");
  88.  
  89. System.out.println("name:"+name.getText()+",price:"+price.getText());
  90. }
  91. }
  92.  
  93. public static void test1() throws DocumentException{
  94. String str = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" +
  95. "<dzswdjz>" +
  96. " <qr_code>" +
  97. "   <nsrsbh>nsrsbh</nsrsbh >" +
  98. "   <retStatus >retStatus</retStatus>" +
  99. "   <img_name>img_name</img_name>" +
  100. " <img_byteString>img_byteString</img_byteString>" +
  101. " </qr_code>" +
  102. "</dzswdjz>";
  103. Document doc = DocumentHelper.parseText(str);
  104.  
  105. //获取到父节点
  106. Element dzswdjz = doc.getRootElement();
  107.  
  108. //定位到qr_code节点
  109. Element qr_code = dzswdjz.element("qr_code");
  110.  
  111. Element nsrsbh = qr_code.element("nsrsbh");
  112. Element retStatus = qr_code.element("retStatus");
  113. Element img_name = qr_code.element("img_name");
  114. Element img_byteString = qr_code.element("img_byteString");
  115.  
  116. System.out.println("nsrsbh:"+nsrsbh.getText());
  117. System.out.println("retStatus:"+retStatus.getText());
  118. System.out.println("img_name:"+img_name.getText());
  119. System.out.println("img_byteString:"+img_byteString.getText());
  120. }
  121. }

dom4j解析xml字符串的更多相关文章

  1. dom4j解析xml字符串实例

    DOM4J 与利用DOM.SAX.JAXP机制来解析xml相比,DOM4J 表现更优秀,具有性能优异.功能强大和极端易用使用的特点,只要懂得DOM基本概念,就可以通过dom4j的api文档来解析xml ...

  2. java中使用axis发布和调用webService及dom4j解析xml字符串

    工作中需要调用webService服务,这里记录一下如何在java中发布和调用webService. 需要的jar包: webService服务端: import javax.jws.WebMetho ...

  3. java解析xml字符串(用dom4j)

    package com.smsServer.Dhst; import java.util.HashMap; import java.util.Iterator; import java.util.Ma ...

  4. java解析xml字符串为实体(dom4j解析)

    package com.smsServer.Dhst; import java.util.HashMap; import java.util.Iterator; import java.util.Ma ...

  5. dom4j解析xml文件和字符串

    转自:http://www.cnblogs.com/black-spike/p/9776180.html 最近在工作中,需要调别的接口,接口返回的是一个字符串,而且内容是xml格式的,结果在解析jso ...

  6. 【JAVA使用XPath、DOM4J解析XML文件,实现对XML文件的CRUD操作】

    一.简介 1.使用XPath可以快速精确定位指定的节点,以实现对XML文件的CRUD操作. 2.去网上下载一个“XPath帮助文档”,以便于查看语法等详细信息,最好是那种有很多实例的那种. 3.学习X ...

  7. dom4j解析xml文档全面介绍

    一.dom4j介绍 dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的.dom4j是一个非常非常优秀的Java XML API,具有性能优异.功能强大和极端易用使用的特点, ...

  8. Java进阶(二十七)使用Dom4j解析XML文件

    使用Dom4j解析XML文件 写在前面的话 由于论文实验要求,需要实现操作XML文档,为此想到了dom4j这个工具,使用之后深感受益.在此分享给大家,以此共勉. 注:本文转载自http://blog. ...

  9. 解析xml字符串时报“前言中不允许有内容”错误。

    一,问题出现经过: j基于java语言webservic服务端接收客户端 传来的xml字符串用 解析时总报:org.dom4j.DocumentException: Error on line 1 o ...

随机推荐

  1. rcp命令

    rcp命令 rcp代表“remote file copy”(远程文件拷贝).该命令用于在计算机之间拷贝文件.rcp命令有两种格式.第一种格式用于文件到文件的拷贝:第二种格式用于把文件或目录拷贝到另一个 ...

  2. linux c 之signal 和sigaction区别

    http://blog.csdn.net/muge0913/article/details/7331129 要对一个信号进行处理,就需要给出此信号发生时系统所调用的处理函数.可以对一个特定的信号(除去 ...

  3. cf500D New Year Santa Network

    D. New Year Santa Network time limit per test 2 seconds memory limit per test 256 megabytes input st ...

  4. Android全屏显示

    requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_ ...

  5. layPage异步分页

    layPage分页,参照官网实例写了一份.如下: function InitDataByPage(curr) { ; $.getJSON("InitDataByPage", { & ...

  6. java中 SSL认证和keystore使用

    java中 SSL认证和keystore使用 2013-10-12 11:08 10488人阅读 评论(0) 收藏 举报   目录(?)[+]     好久没用过SSL认证了,东西久不用,就有点生疏. ...

  7. js高级教程第3版笔记(我的理解)陆续更新中

    js基础语法'use strict'(严格模式)定义变量var object;只声明未赋值,默认值为undefined;var object1=值;声明并赋值;function fun(a){这样也叫 ...

  8. Android中AsyncTask的简单用法 .

    在开发Android应用时必须遵守单线程模型的原则: Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行.在单线程模型中始终要记住两条法则: 1. 不要阻塞UI线程 2. 确保只 ...

  9. HDU 1501 & POJ 2192 Zipper(dp记忆化搜索)

    题意:给定三个串,问c串是否能由a,b串任意组合在一起组成,但注意a,b串任意组合需要保证a,b原串的顺序 例如ab,cd可组成acbd,但不能组成adcb. 分析:对字符串上的dp还是不敏感啊,虽然 ...

  10. js解析json,js转换json成map,获取map的key,value

    json串格式 { "10.10.11.1": { "target_1": "34.2", "target_3": &q ...