XML文件解析

XML解析:
    在xml文件中由于更多的是描述信息的内容,所以在得到一个xml文档之后应该利用程序按照里面元素的定义名称取出对应的内容,这一过程就称为xml解析。

解析xml文件的4种方式:
1.DOM         
2.SAX
3.JDOM    
4.DOM4J

文档对象模型(DOM)

DOM---对象化的XML数据接口
 它定义了XML文档的逻辑结构,给出了一种访问和处理XML文档的方法。利用DOM,程序开发人员可以动态地创建文档,遍历文档结构,添加、修改、删除文档内容,改变文档的显示方式等等。

DOM树
  DOM这个层次的结构是一棵根据XML文档生成的节点树。在这棵节点树中,有一个根节点--Document节点,所有其他的节点都是根节点的后代节点。节点树生成之后,就可以通过DOM接口访问、修改、添加、删除、创建树中的节点和内容。

读入xml:
DocumentBuilderFactory factory =
DocumentBuilderFactory.newInstance();
// 获取解析器
DocumentBuilder builder = factory.newDocumentBuilder();
// 解析xml文档
Document doc = builder.parse(new File("src\\dom.xml"));
Element root = builder.getDocumentElement();//获得根元素
写回xml:
TransformerFactory tfactory=TransformerFactory.newInstance();
Transformer tformer = tfactory.newTransformer();
tformer.transform(new DOMSource(doc), new StreamResult(new FileOutputStream("src\\dom1.xml")));

得到文档模型的根元素
Element root = doc.getDocumentElement();  
元素Element的函数:
String getTagName()   -得到标签的名字
String getAttribute(“unit”) -得到元素的unit属性值
节点Node的函数:
NodeList  getChildNodes()   - 得到子节点的集合
Node getFirstChild()         - 得到第一个子节点
Node getLastChild()        - 得到最后一个子节点

节点Node的函数:
Node getNextSibling() - 得到下一个兄弟节点
Node getPreviousSibling()   - 得到前一个兄弟结点
Node getParentNode()     - 得到父节点
NamedNodeMap getAttributes()  - 得到所有的属性集合
String getNodeName()         - 得到当前节点的名字
String getNodeValue()   - 得到当前节点的值
NodeList的函数
int getLength()    -得到集合长度
Node item(int index)  - 得到集合中的一个元素

写XML文档函数
DocumentBuilder 的函数:
Document doc = builder.newDocument(); -新建一个模型
Document 的函数:
Element createElement(String name) – 建立一个元素
Text createTextNode(String data)-创建一个文本节点

更多请见:http://www.mark-to-win.com/tutorial/50301.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值