节点本身和其包含的子节点是不同的概念

解决方案 »

  1.   

    楼主你想怎么取说一下 看看我能不能帮你写一个
      

  2.   

    NodeList books=root.getChildNodes();
            System.out.print("allchildnode length is :");
            System.out.println(books.getLength());
            System.out.println("*****************************");               
    //不知道为什么上面的显示结果是5  我感觉应该是2//因为java会将回车换行当成一个node,所以2个family元素+3个空格就等于5个,下一个问题也是这个原因,解决方法,你可以将xml中的换行去掉,或者用getElementsByTagName()方法直接查找想要的元素。Node sexnode = namenode.getNextSibling();
                String sex = sexnode.getNodeValue();
                System.out.print("the sex is :");
                System.out.println(sex);
                System.out.println("*****************************");
    //最后这段报的异常是因为namenode是一个TextNode,是<name>元素的getFirstChild(),也是唯一一个,getNextSibling()取他的下一个元素当然会报空异常啦,应该取<name>的下一个元素的第一个元素才能取出性别的值