XML的解析——读取节点的值和内容 (只有一级子节点)
发布时间:2020-12-16 05:02:12 所属栏目:百科 来源:网络整理
导读:?xml version="1.0" encoding="UTF-8"?水果 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="TestNameSpace.xsd"苹果苹果/苹果香蕉香蕉/香蕉李子中文/李子 /水果 JAVA解析: package hr.csdn.com;import java.io.Fil
<?xml version="1.0" encoding="UTF-8"?> <水果 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="TestNameSpace.xsd"> <苹果>苹果</苹果> <香蕉>香蕉</香蕉> <李子>中文</李子> </水果>JAVA解析:
package hr.csdn.com; import java.io.File; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import com.sun.xml.internal.bind.v2.runtime.NameList; public class DomeTest { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub try { DocumentBuilderFactory factor=DocumentBuilderFactory.newInstance();//创建一个工厂实例factory DocumentBuilder bulider=factor.newDocumentBuilder();//得到一个dom解析器 Document doc=bulider.parse(new File("src/Test.xml")); childer(doc); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } private static void childer(Document doc) { // TODO Auto-generated method stub NodeList nodelist=doc.getElementsByTagName("水果");// Node n1=nodelist.item(0); NodeList n2=n1.getChildNodes(); int count=0; for(int i=0;i<n2.getLength();i++){ if(n2.item(i).getNodeType()==Node.ELEMENT_NODE)//循环遍历元素节点的个数 count++; } System.out.println("水果中含有的元素节点的个数是:"+count); for(int i=0;i<n2.getLength();i++){ Node node=n2.item(i); if(node instanceof Element){////判断这个节点属于Element,再进行取值 System.out.println("子节点名称为:"+node.getNodeName()+" "+"对应的值为:"+node.getFirstChild().getNodeValue()); } } } } 运行结果: 水果中含有的元素节点的个数是:3 子节点名称为:苹果 对应的值为:苹果 子节点名称为:香蕉 对应的值为:香蕉 子节点名称为:李子 对应的值为:中文 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容