Stax的基本操作
来源:互联网 发布:搜索音乐的软件 编辑:程序博客网 时间:2024/06/14 04:24
一、Stax读取xml文件
1. xml的定义:
<?xml version="1.0" encoding="UTF-8"?><users><user id="1"><username>zhangsan</username><birthday>1990-12-12</birthday></user><user id="2"><username>lisi</username><birthday>1990-12-12</birthday></user><user id="3"><username>wangwu</username><birthday>1990-12-12</birthday></user></users>2. 读取xml文件:
2.1 光标读取方式
package com.npf.spring;import java.io.InputStream;import javax.xml.stream.XMLInputFactory;import javax.xml.stream.XMLStreamConstants;import javax.xml.stream.XMLStreamReader;import org.junit.Test;public class UserTest {@Testpublic void test01() throws Exception{XMLInputFactory factory = XMLInputFactory.newFactory();InputStream stream = UserTest.class.getResourceAsStream("user.xml");XMLStreamReader streamReader = factory.createXMLStreamReader(stream);while(streamReader.hasNext()){int type = streamReader.next();if(type == XMLStreamConstants.START_ELEMENT){String name = streamReader.getName().toString();if("user".equals(name)){String attributeName = streamReader.getAttributeName(0).toString();String attributeValue = streamReader.getAttributeValue(0).toString();System.out.println("<"+streamReader.getName().toString()+" "+attributeName+"="+attributeValue+">");}else{System.out.println("<"+streamReader.getName().toString()+">");}}else if(type == XMLStreamConstants.CHARACTERS){System.out.println(streamReader.getText().trim());}else if(type == XMLStreamConstants.END_ELEMENT){System.out.println("</"+streamReader.getName().toString()+">");}}}}2.2 迭代方式:
@Testpublic void test02() throws Exception{XMLInputFactory factory = XMLInputFactory.newFactory();InputStream stream = UserTest.class.getResourceAsStream("user.xml");XMLStreamReader streamReader = factory.createXMLStreamReader(stream);while(streamReader.hasNext()){int type = streamReader.next();if(type == XMLStreamConstants.START_ELEMENT){String name = streamReader.getName().toString();if("username".equals(name)){System.out.println("username: "+ streamReader.getElementText());}}}}
二、Stax写出xml文件
@Testpublic void test03() throws Exception{XMLStreamWriter xsw = XMLOutputFactory.newFactory().createXMLStreamWriter(System.out);xsw.writeStartDocument("UTF-8", "1.0");xsw.writeEndDocument();xsw.writeStartElement("person");xsw.writeStartElement("id");xsw.writeCharacters("1");xsw.writeEndElement();xsw.writeEndElement();xsw.flush();xsw.close();}
0 0
- Stax的基本操作
- Java Stax操作XML简介
- STAX的安装配置
- StAX
- stax
- XML:Stax操作XML(基于光标的方式、迭代的方式、XPath的方式)
- 学习STAX很好的网站
- StAX的一个隐秘bug
- 使用stax操作xml(1)
- 使用stax操作xml(2)
- 使用stax操作xml(3)
- 使用stax操作xml(4)
- 使用stax操作xml(5)
- 使用stax操作xml(6)
- XML的解析方式(DOM,SAX,StAX)
- Java处理XML文档的StAX方式
- Stax解析XML的简单实例
- stax解析XML的一个例子
- 在jsp开发中,为什么使用getServletContext()方法代替隐含对象application?
- Ajax初识
- JUCE之控件
- 51Nod - 1092 区间dp
- Qxt的使用
- Stax的基本操作
- [生存志] 第94节 民本王道人和
- python ----1
- js问题!!!
- 别人推荐的书单
- Android Animator的使用(一)
- VS2013+OpenCV3.0.0+Kinect v2.0 安装 (Win10-64位)
- OpenResty修改Nginx默认autoindex页面
- YOLO:You Only Look Once: Unified, Real-Time Object Detection论文总结