xml如何获取节点,标签,属性,文本
来源:互联网 发布:知识图谱构建 python 编辑:程序博客网 时间:2024/05/25 21:32
xml源文件:
<?xml version="1.0" encoding="utf-8"?><contactList> <contact id="001" name="aa1" ss="22"> <name>张三</name> <age>20</age> <phone>134222223333</phone> <email>zhangsan@qq.com</email> <qq>432221111</qq> </contact> <contact id="003"> <name>lisi</name> <age>20</age> <phone>134222225555</phone> <email>lisi@qq.com</email> <qq>432222222</qq> </contact></contactList>
读取xml文档,返回Document
SAXReader read = new SAXReader(); Document doc = read.read(new File("./src/contact.xml"));//返回Document对象
1.获取节点
a.)将获取的节点便利输出:
Iterator<Node> inter = doc.nodeIterator();//获取节点 while(inter.hasNext()){//判断是否有下一个元素 Node node=inter.next(); String name = node.getName(); System.out.println(name);//打印出节点名称 }
b.)获取该标签节点下的子节点:
if(node instanceof Element){//判断是否有子节点 Element ele = (Element)node; Iterator <Node> ite = ele.nodeIterator(); while(ite.hasNext()){ Node nod=ite.next();//打印出子节点名称 System.out.println(nod.getName()); } }
#####c.)获取所有节点:
Element ele = dor.getRootElement();//获取根节点 getChildNode(ele);//调用方法//获取所有子节点的方法并打印private void getChildNode(Element elem){ System.out.println(elem.getName());//输出节点 Iterator <Node> it= elem.nodeIterator(); while(it.hasNext()){ Node node = it.next(); if(node instanceof Element){ Element el = (Element)node; getChildNode(el);//递归 } }}
2.获取标签
a.)先得到根标签:
Element rootele =doc.getRootElement();//得到根标签 String name = rootele.getName(); System.out.println(name);
b.)得到当前标签下的指定名称的子标签:
Element contele= rootele.element("contact");//得到当前标签下的指定名称的子标签 System.out.println(contele.getName());
c.)获得当前标签下指定名称的所有子标签:
Iterator<Element> it=rootele.elementIterator("contact");//获得当前标签下指定名称的所有子标签 while(it.hasNext()){ Element elem = it.next(); System.out.println(elem.getName()); }
3.获取属性
a.)先获得属性所在的标签对象:
//获得属性,先获得属性所在的标签对象,然后获取属性 Element contele =doc.getRootElement().element("contact");
b.)得到指定名称属性值
方法一:
//得到属性 //得到指定名称属性值 String IDValue= contele.attributeValue("id"); System.out.println(IDValue);
方法二:
//得到指定属性名称的属性对象和属性值 Attribute attr = contele.attribute("id"); System.out.println(attr.getName()+"="+attr.getValue());
c.)得到指定名称的所有属性值
方法一:
//获取当前标签所有的属性对象和属性值 List<Attribute> list= contele.attributes(); for(Attribute arr:list){ System.out.println(arr.getName()+"="+arr.getValue()); }
方法二:
//获取当前标签所有的属性对象和属性值Iterator<Attribute> it= contele.attributeIterator(); while(it.hasNext()){ Attribute aa= it.next(); System.out.println(aa.getName()+"="+aa.getValue()); }
4.获取文本
a.)先获取文本标签:
//获取文本(先获取文本标点,在获取文本内容) Element neamEle = doc.getRootElement().element("contact").element("name");
b.)获取文本内容:
//得到文本内容 String nameText = neamEle.getText(); System.out.println(nameText);
c.)得到指定标签名的文本内容:
//得到指定标签名的文本内容 String text2= doc.getRootElement().element("contact").elementText("name"); System.out.println(text2);
0 0
- xml如何获取节点,标签,属性,文本
- Java如何获取xml文件中子节点的属性
- Java如何获取xml文件中子节点的属性
- Java如何获取xml文件中子节点的属性
- Java如何获取xml文件中子节点的属性
- XML解析 获取节点属性
- js如何获取文本节点的值?
- demo4j xml 获取所有节点/属性
- Xml-对象互相转换(获取节点属性)
- textArea标签没有value属性,,,以及jquery如何获取textarea文本域的值
- 如何读取xml节点中的属性
- dom4j 解析xml 获取节点值和节点属性
- 读取xml文档(标签 属性 文本)--------------②
- 获取文本节点
- 初学xpath 解决如何获取子孙节点的文本内容
- 元素节点、属性节点、文本节点 的节点属性
- 获取xml里最后一个节点的属性值
- boost 解析XML文件,获取子节点的属性值
- IPython和IPython Notebook的安装和简单应用
- 主板(一)
- XML之DOM解析
- Android原生库和架构层通信的socket
- MongoDB安装及基本使用
- xml如何获取节点,标签,属性,文本
- throw 与 try 和catch 的简单尝试
- c++使用hiredis库操作redis讲解
- Dom4j增加,修改,删除XML文件
- 卷积神经网络(一)
- curl网站开发指南
- scala apply()方法简单用法
- Servlet3.0特性和过滤器顺序
- SVG技术入门:线条动画实现原理