基本信息
源码名称:java读写xml文件 示例源码(Dom4j)
源码大小:0.02M
文件格式:.zip
开发语言:Java
更新时间:2018-06-21
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):78630559
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
import org.apache.commons.lang3.StringUtils;
import org.dom4j.*;
import org.dom4j.io.SAXReader;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
/**
* 测试类: 测试dom4j相关api功能
*
* @author chenx
* @date 2017/12/5
*/
@RunWith(JUnit4.class)
public class Dom4jTest {
private Document document;
@Before
public void init() throws DocumentException {
SAXReader saxReader = new SAXReader();
document = saxReader.read(getClass().getResourceAsStream("Gps_Stops.xml"));
}
@Test
public void testIterator() {
Element root = document.getRootElement();
for (Iterator<Element> iterator = root.elementIterator(); iterator.hasNext();) {
Element element = iterator.next();
if (element.isTextOnly()) {
System.out.println(element.getQualifiedName() ":" element.getTextTrim());
}
}
}
@Test
public void testXpath() {
List<Node> nodes = document.selectNodes("//G_CONSIDERED_DATE");
for (Node node : nodes) {
Element element = (Element) node;
Element curDate = element.element("CONSIDERED_DATE");
System.out.println(curDate.getQualifiedName() ":" curDate.getTextTrim());
}
}
@Test
public void testIteratorAttr() {
Map<String, String> namespaceMap = new HashMap<String, String>();
namespaceMap.put("ns", "GpsStopsByGroupReport");
XPath xPath = document.createXPath("//ns:table1_GroupName/ns:table1_UserNum_Collection/ns:table1_UserNum");
xPath.setNamespaceURIs(namespaceMap);
List<Node> nodes = xPath.selectNodes(document);
for(int i=0;i<nodes.size();i ){
Node node=nodes.get(i);
System.out.println(node.valueOf("@UserName"));
// XPath otherXPath = DocumentHelper.createXPath("//ns:table1_GroupName/ns:table1_UserNum_Collection/ns:table1_UserNum");
// otherXPath.setNamespaceURIs(namespaceMap);
// List<Node> carsInfos = otherXPath.selectNodes(node);
// carsInfos.forEach(carsInfo -> {
// String interval = StringUtils.normalizeSpace(carsInfo.valueOf("@UserName"));
// System.out.println(interval);
// });
}
}
@Test
public void testIteratorByElement() {
Element root = document.getRootElement();
Iterator<Element> hotelInfos = root.elements().get(1).elements().get(0).elements().get(0).elements().get(0).elements().iterator();
while (hotelInfos.hasNext()) {
Element hotelInfo = hotelInfos.next();
System.out.println(hotelInfo.attributeValue("Group"));
Iterator<Element> carInfos = hotelInfo.elements().get(0).elements().iterator();
while (carInfos.hasNext()) {
Element carInfo = carInfos.next();
System.out.println(carInfo.attributeValue("UserName"));
}
}
}
}