xml 解析 dom4j

http://xhy0422.iteye.com/blog/50235 很全的网址

简单的个人实现:
SAXReader sr = new SAXReader();
Document doc = sr.read(new File(Main.class.getResource("test.xml")
.toURI().getPath()));
doc.getRootElement().accept(new MyVisitor());


MyVisitor代码
import org.dom4j.Attribute;
import org.dom4j.Element;
import org.dom4j.VisitorSupport;

public class MyVisitor extends VisitorSupport{

@Override
public void visit(Attribute node) {
System.out.println(node.getName());
super.visit(node);
}

@Override
public void visit(Element node) {
System.out.println(getFullName(node));
System.out.println("-------" + node.getText());
super.visit(node);

}



/**
* 得到属性的全名
* @param element
* @return
*/
private String getFullName(Element element){
if(element.isRootElement()) {
return element.getName();
} else {
return getParentName(element.getParent())+element.getName();
}
}

/**
* 递归调用,返回父节点全名
* @param parentElement
* @return
*/
private String getParentName(Element parentElement){
String tmp = "";
if(!parentElement.isRootElement()) {
tmp = getParentName(parentElement.getParent());
}
return tmp+parentElement.getName()+".";
}


}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值