您的位置:首页 > 其它

采用dom4j解析所有的元素并打印和保存到内存中

2017-08-22 10:47 281 查看
public class XMLParser {
private Document document;
public XMLParser(String filePath){
//从当前source目录下读取文件
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream(filePath);
SAXReader saxReader = new SAXReader();
try {
document=  saxReader.read(inputStream);
} catch (DocumentException e) {
e.printStackTrace();
}
}

public Configuration parse(){
Element rootElement = document.getRootElement();
Configuration configuration = new Configuration();
reversionParser(rootElement,configuration);
return configuration;
}

private void reversionParser(Element element,Configuration configuration){
//获取当前元素的信息
String queryName = element.getQualifiedName();
System.out.println("queryName:"+queryName);
//获取标签上面所有属性的名称和值
List attributes = element.attributes();
Iterator attrs = attributes.iterator();
while (attrs.hasNext()){
Attribute attr = (Attribute) attrs.next();
System.out.println("attribute= "+attr.getName()+":"+attr.getValue());
}
//列出它下面一级子元素
Iterator iterator = element.elementIterator();
while (iterator.hasNext()){
reversionParser((Element) iterator.next(),configuration);//递归解析下一层
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: