当前位置:  编程技术>java/j2ee

通过dom4j解析xml字符串(示例代码)

    来源: 互联网  发布时间:2014-10-30

    本文导语:  代码如下:import java.util.Iterator;import java.util.List;import org.dom4j.Attribute;import org.dom4j.Document;import org.dom4j.DocumentHelper;import org.dom4j.Element;public class Test { @SuppressWarnings("unchecked") public static void main(String[] args) throws Exception {  String xml =...

代码如下:

import java.util.Iterator;
import java.util.List;
import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
public class Test {
 @SuppressWarnings("unchecked")
 public static void main(String[] args) throws Exception {
  String xml = " single_trade_query utf-8 2088001513232645 20090422577264 ";
  Document document = DocumentHelper.parseText(xml);
  Element root = document.getRootElement();
  List elements = root.elements();
  for (Iterator it = elements.iterator(); it.hasNext();) {
   Element element = it.next();
   List attributes = element.attributes();
   for (int i = 0; i < attributes.size(); i++) {
    Attribute attribute = attributes.get(i);
    if ("service".equals(attribute.getText())) {
     System.out.println(element.getName() + "  :  "
       + element.getText());
    }
   }
  }
 }
}

或者:
代码如下:

import java.io.StringReader;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.xml.sax.InputSource;
public class Test {

 @SuppressWarnings("unchecked")
 public static void main(String[] args) throws Exception {
  String xml = "TestServletTestServlettest.TestServlet";
  InputSource in = new InputSource(new StringReader(xml));
  in.setEncoding("UTF-8");
  SAXReader reader = new SAXReader();
  Document document = reader.read(in);
  Element root = document.getRootElement();
  List elements = root.elements();
  for(Iterator it = elements.iterator();it.hasNext();){
   Element element = it.next();
   System.out.println(element.getName()+" : "+element.getTextTrim());
  }

 }
}

或者增加ID属性,直接通过ID获取某个属性值:
代码如下:

import java.io.StringReader;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.xml.sax.InputSource;
public class Test {
    public static void main(String args[]) {
     String xml = " single_trade_query utf-8 2088001513232645 20090422577264 ";
     InputSource source = new InputSource(new StringReader(xml));
        SAXReader reader = new SAXReader();
        Document document = null;
  try {
   document = reader.read(source);
  } catch (DocumentException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  Element root = document.getRootElement();
        System.out.println(document.elementByID("tt").getTextTrim());
        System.out.println(root.elementByID("tt").getTextTrim());
    }
}

注意:通过ID获取,元素ID属性名必须为“大写ID”,小写的“id”会认为是普通属性!

    
 
 

您可能感兴趣的文章:

  • php通过socket_bind()设置IP地址代码示例
  • jquery 通过name快速取值示例
  • python通过scapy获取局域网所有主机mac地址示例
  • 通过spring用beanshell实现java接口示例
  • c#通过unicode编码判断字符是否为中文示例分享
  • 输出java进程的jstack信息示例分享 通过线程堆栈信息分析java线程
  • http basic authentication通过post方式访问api示例分享 basic认证示例
  • java通过共享变量结束run停止线程的方法示例
  • java HashMap通过value反查key的代码示例
  • Android 通过onDraw实现在View中绘图操作的示例
  • jquery通过select列表选择框对表格数据进行过滤示例
  • php通过字符串调用函数示例
  • 通过特性(attribute)为枚举添加更多信息示例
  • 通过java api实现解压缩zip示例
  • yii框架通过控制台命令创建定时任务示例
  • Android学习笔记--通过Application传递数据代码示例
  • java通过复选框控件数组实现添加多个复选框控件示例分享
  • java不通过配置文件初始化logger示例
  • HTML教程 iis7站长之家
  • C#通过接口与线程通信(捕获线程状态)示例代码
  • java通过url读取文件内容示例
  • mini2440如何通过串口发送字符串,急求
  • sun机器中如何通过awk命令截取字符串??
  • c语言中如何通过日期时间字符串得到时间戳?
  • Jquery通过JSON字符串创建JSON对象
  • 如何通过.sh文件 把指定字符串写入到指定文件
  • php通过数组实现多条件查询实现方法(字符串分割)
  • 请问如何通过javascript直接将一个字符串送到windows剪贴板上?
  • SqlServer下通过XML拆分字符串的方法
  • 如何在java中获取dll中的字符串或者字符数组(通过jni)?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 如何修改通过locale命令查看到的系统字符集
  • apache通过php的oci函数读取Oracle(字符集ZHS16GBK)时,显示乱码,如何解决?
  • 请教怎样通过一个字符窜ID来定位bean,再调用EJBHome.remove()的方法来删除??
  • 为什么通过jTextField输入的汉字变成了一个字符?我用jTextField.getText().length()返回的结果就是这样!6个汉字的长度只有6!!!
  • 通过LinQ查询字符出现次数的实例方法
  • OpenOffice 2.2.1不显示少数的中文字符(有截图说明),能否通过“改字体”解决
  • 通过javascript实现DIV居中,兼容各浏览器版本
  • applet可以不通过数字签名,通过设置IE直接在本地访问本地文件吗
  • 通过javascript库JQuery实现页面跳转功能代码
  • 我使用.net编译通过,但是使用g++编译不能通过。总是提示我undefined reference to ~myclass()
  • c#通过委托delegate与Dictionary实现action选择器代码举例
  • 紧急求救!能通过jdbc怎样连接sqlsever 然后通过 for xml 关键字得到xml流吗?
  • linux下通过crond实现自动执行程序
  • 我想我的网站屏蔽掉通过某些网站过来的访问,我想通过htaccess 文件来做,请大家帮帮我。
  • 通过docker commit命令保存对docker容器的修改
  • 如何通过INTERNET访问通过共项一条线路上网的局域网中的机器???
  • 通过docker run命令运行新的docker镜像
  • 为什么g++编译通过了,而gcc却编译通过不了???
  • 通过docker ps命令检查运行中的docker镜像
  • 请指点: 在windows下能否通过程序来获取linux下的用户列表,甚至通过自己写的windows程序界面增加修改linux的用户
  • Session id实现通过Cookie来传输方法及代码参考
  • Jbuilder第一次编译说缺包,引入通过!然后把原来引入的注释,又通过!上帝,救我!
  • 通过docker search命令搜索可用docker镜像
  • 红旗Linux主机可以通过127.0.0.1访问,但如何是连网的Win2000机器通过Linux的IP去访问Linux
  • Python3通过request.urlopen实现Web网页图片下载
  • 请指点: 在windows下能否通过程序来获取linux下的用户列表,甚至通过自己写的windows程序界面增加修改linux的用户 100分相赠
  • .NET下 c#通过COM组件操作并导出Excel实例代码
  • 工作站Redhat Linux7.2如何通过NT4.0 proxy代理服务器上网,我不能通过其验证!请高手指点思路和方法!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3