java解析xml jar包_java解析xml文件(附jar包和使用实例)

解析xml文件用到了dom4j-1.6.1.jar包,具体版本可能有新旧之分,我提供如下某度云盘,供下载测试用。

链接:http://pan.baidu.com/s/1i5Aw8Jz 密码:qma7

下面是我的测试代码:

先是主要测试文件:

package com.lxk.xmlTest;

import com.google.common.collect.Lists;

import org.dom4j.Document;

import org.dom4j.DocumentException;

import org.dom4j.Element;

import org.dom4j.io.SAXReader;

import java.io.File;

import java.util.Arrays;

import java.util.List;

/**

* Created by lxk on 2016/11/10

*/

public class XmlTest {

public static void main(String[] args) {

xmlTest();

}

/**

* 测试解析xml文件

*/

@SuppressWarnings("unchecked")

private static void xmlTest() {

SAXReader reader = new SAXReader();

reader.setEncoding("utf-8");

Document document;

try {

document = reader.read(new File("src/testConfig.xml"));

Element root = document.getRootElement();//得到xml跟标签,此处是

List list = root.elements("stream");

List xmlNodeList = Lists.newArrayList();//得到xml文件的配置信息

for (Element e : list) {

List streamIds = Arrays.asList(e.element("streamId").getStringValue().split(","));

XmlModel temp = new XmlModel(streamIds, e.element("name").getStringValue());

xmlNodeList.add(temp);

}

for (XmlModel xmlModel : xmlNodeList) {

System.out.println(xmlModel);

}

} catch (DocumentException e) {

e.printStackTrace();

}

}

}

然后是节点model文件:

package com.lxk.xmlTest;

import java.util.List;

/**

* 配置文件节点 model

*

* Created by lxk on 2016/11/10

*/

public class XmlModel {

/**

* 流ID

*/

private List streamIds;

/**

* 流名称

*/

private String name;

/**

* 默认构造函数

* (在构造model的时候,若要添加新的带参数构造函数,那么这个默认函数一定要写。避免出现你不知道的错)

*/

public XmlModel() {

}

/**

* 带参构造函数

*/

public XmlModel(List streamIds, String name) {

this.streamIds = streamIds;

this.name = name;

}

public List getStreamIds() {

return streamIds;

}

public void setStreamIds(List streamIds) {

this.streamIds = streamIds;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

@Override

public String toString() {

return "单个节点{" +

"streamIds=" + streamIds +

", name='" + name + '\'' +

'}';

}

}

最后是xml配置文件:(里面的标签随自己意取名,在Java文件对应就可以)

576a32b7393048060fdeb463,57198f91c5e62fca950103fd

借记卡及贷记卡总量

57ba9ea8e4b040a7317c86a0,57f88f52e4b0fbcf8381665f

支付宝-借记卡

580f0b32e4b034a9cf9eaaa6

支付宝-贷记卡

580f058ee4b034a9cf9eaaa2

财付通-借记卡

57918dade4b0e55b2369e165

财付通-贷记卡

579af7c3e4b0c5e678ed9853

其他借记卡快捷类交易

580f0c2ae4b034a9cf9eaaa8

其他贷记卡快捷类交易

运行结果:

0818b9ca8b590ca3270a3433284dd417.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值