xml的两种解析方式
来源:互联网 发布:python pack tkinter 编辑:程序博客网 时间:2024/04/29 16:03
xml解析是日常项目中用到比较多的技能,无论是配置参数或者数据都可以保存在xml文件中,同时也可以将xml作为传输数据的一种格式。本文将介绍两种基本解析方式:xml字符串解析和xml文件解析。
xml字符串解析
package com.discover.parse;import java.util.Iterator;import org.dom4j.Document;import org.dom4j.DocumentException;import org.dom4j.DocumentHelper;import org.dom4j.Element;/** * @author 民团司令 * */public class XmlStringParser { public static void main(String[] args){ String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" +"<root><student><name>jim</name><age>12</age></student>" +"<student><name>jim</name><age>12</age></student></root>"; try { Document document = DocumentHelper.parseText(xml); Element root = document.getRootElement(); Iterator stuIterator = root.elementIterator("student"); while (stuIterator.hasNext()) { Element student = (Element)stuIterator.next(); String name = student.elementTextTrim("name"); String age = student.elementTextTrim("age"); System.out.println("name:"+name+",age:"+age); } } catch (DocumentException e) { // TODO Auto-generated catch block e.printStackTrace(); } }}xml文件解析
package com.discover.parse;import java.io.File;import java.util.Iterator;import org.dom4j.Document;import org.dom4j.DocumentException;import org.dom4j.Element;import org.dom4j.io.SAXReader;/** * @author 民团司令 * */public class XmlFileParser { /** * @param args */ public static void main(String[] args) { String xmlFilePath = XmlFileParser.class.getResource("").getPath()+"stuInfo.xml"; File xmlFile = new File(xmlFilePath); if(xmlFile.exists()) { SAXReader reader = new SAXReader(); try { Document document = reader.read(xmlFile); Element root = document.getRootElement(); Iterator stuIterator = root.elementIterator("student"); while (stuIterator.hasNext()) { Element student = (Element)stuIterator.next(); String name = student.elementTextTrim("name"); String age = student.elementTextTrim("age"); System.out.println("name:"+name+",age:"+age); } } catch (DocumentException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }}
根据读者的要求附上第2种方式的stuInfo.xml的内容,该文件和类文件放在同一目录即可。
<?xml version="1.0" encoding="UTF-8"?><root> <student> <name>jim</name> <age>12</age> </student> <student> <name>jim</name> <age>12</age> </student></root>
两种解析方式都是采用的dom4j实现,该jar可以在如下官网下载
http://www.dom4j.org/dom4j-1.6.1/
2 0
- XML解析的两种解析方式
- kxml解析 xml的两种方式
- Xml解析的两种方式
- xml的两种解析方式
- xml的两种解析方式
- xml文档的两种解析方式
- XML解析的两种方式
- 两种xml解析方式
- XML解析的两种解析方式:DOM和SAX
- XML的两种解析方式逐行解析(SAX解析)节点解析(DOM解析)
- JQuery解析xml的两种方式$.get和$.ajax
- 通过AJAX的JS、JQuery两种方式解析XML
- Java解析XML文件的两种方式详解
- IOS XML DOM解析的两种方式
- 解析XML的两种方式 javax | dom4j
- xml的两种解析方式:sax,dom4j
- Java解析XML文件的两种方式详解
- Adroid开发之解析xml数据的两种方式
- 二叉排序树
- 在swift中使用md5
- 数据结构课后作业
- Unix网络编程相关函数
- ZOJ Problem Set - 2850 Beautiful Meadow
- xml的两种解析方式
- Ubuntu14环境下minigui安装问题记录--object.lo错误
- QGraphicsView 框架学习(四),Undo Redo
- Linux 下的soket编程
- U4初步使用整理(三)Actor基本操作
- php将图片以二进制保存到mysql数据库并显示
- java里面包的重要性-管理类文件
- MySQL中BLOB字段类型介绍
- linux md5sum用法