问题是这样的:我需要根据一个属性值从一个xml文档中取出满足条件的结点以及该结点的上层结点。今天花了几分钟就搞定了的,也得到了想要的结果,但是奇怪的是,另一GG把程序拿去,在他的电脑上运行竟然没有结果。List nodes。。。。这一行中nodes总是为null,盼指教!
代码如下:
[code="java"]
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.Node;
import org.dom4j.io.SAXReader;
public class OID2Path {
/**
* @param args
*/
public static void main(String[] args) {
SAXReader reader = new SAXReader();
Document mibDoc = null ;
try {
mibDoc = reader.read("xmlfile/RFC1213-MIB.xml") ;
System.out.println("encoding:"+mibDoc.getXMLEncoding());
} catch (DocumentException e) {
e.printStackTrace();
}
Element rootElt = mibDoc.getRootElement() ;
//mibDoc.sele
List<Node> nodes = mibDoc.selectNodes("//*[@oid='.1.3.6.1.2.1.4.21.1']");
for (Node node : nodes) {
System.out.println(node.getName()+":"+node.getText().trim());
while(node.getParent()!=null)
{
node= node.getParent();
System.out.println(node.getName());
}
}
}
}[/code]