Posted on 2006-11-24 12:41 
兵临城下 阅读(438) 
评论(5)  编辑  收藏  所属分类: 
J2SE 
			 
			
		 
		有这样一段代码:
       public static Node findNode(Node node, String name)
 {
         NodeList list = node.getChildNodes();
         int size = list.getLength();
         for (int i = 0; i < size; i++)
         {
             Node node = list.item(i);
             if(node.getNodeType()!=Node.ELEMENT_NODE) 
                   continue; 
             if (node.getNodeName().equals(name))
                  return node;  
        }
 }
注意其中标红的这句代码,为什么要加这个判断?我在调试过程中发现这段代码确实有用,但为什么有时一样的node结构,为什么有时能检测到非ELEMENT_NODE type 的节点,有时却是直接跳过呢?
      询问一些同事说,在xml结构中如果存在非法的空格,xml解析器也会把它解析成一个node,但nodetype不是element而已,是这样吗,是不是还有其他的原因?