六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 31|回复: 0

dom4j解析xml文件的例子

[复制链接]

升级  58%

5

主题

5

主题

5

主题

童生

Rank: 1

积分
29
 楼主| 发表于 2013-2-3 10:16:12 | 显示全部楼层 |阅读模式
网上很多今天我自己写个 递归的,留作备用,其实看了api可以发现,可以从流中拿到document的,也可以从字符串中,等等有很多方法。大家可以尝试。本实例,大家只要输入正确的文件名就OK可以测试了.....

import java.io.File;import java.io.FileInputStream;import java.util.List;import org.dom4j.Document;import org.dom4j.DocumentException;import org.dom4j.Element;import org.dom4j.io.SAXReader;public class PaymentAnalysisXML {public static void main(String[] args) {try{String filePath = "src/this.xml"; //文件路径(任何xml文件,但要保证路径啊!)           FileInputStream inputStream = new FileInputStream(new File(filePath));new PaymentAnalysisXML().readContentFromInputStream(inputStream);} catch(Exception e) {e.printStackTrace();}}public void readContentFromInputStream(FileInputStream inputStream) {try {Document document = new SAXReader().read(inputStream);recursionElementGetContent(document.getRootElement());} catch (DocumentException e) {e.printStackTrace();}}public void recursionElementGetContent(Element element2) {List<Element> list = element2.elements();if(list.size() > 0) {for(int i=0; i<list.size(); i++) {Element element = list.get(i);if(element.isTextOnly()) {System.out.println(element.getName() + " == " + element.getTextTrim());continue;}recursionElementGetContent(element);}}}}
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表