package com.blade.kit;
import java.io.File;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Node;
import org.dom4j.io.SAXReader;
import org.xml.sax.SAXException;
public class XmlKit {
private Document document;
public XmlKit(String filePath) {
String xmlPath = XmlKit.class.getResource(filePath).toString();
if (xmlPath.substring(5).indexOf(":") > 0) {
// 路径中含有:分隔符,windows系统
xmlPath = xmlPath.substring(6);
} else {
xmlPath = xmlPath.substring(5);
}
SAXReader reader = new SAXReader();
try {
reader.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd", false);
this.document = reader.read(new File(xmlPath));
} catch (SAXException e) {
e.printStackTrace();
} catch (DocumentException e) {
e.printStackTrace();
}
}
public String attrValue(String strXPath) {
Node n = document.selectSingleNode(strXPath);
if (n != null) {
return (n.valueOf("@value"));
} else {
return null;
}
}
}