javaIO--通过SAX方式解析xml文件简例
来源:互联网 发布:淘宝账号一天能刷几单 编辑:程序博客网 时间:2024/05/21 22:53
//先创建的xml文件
<?xml version="1.0" encoding="utf-8"?><bookstore><book id="1"> <name>三体</name><author>刘慈欣</author><year>2014</year></book><book id="2"> <name>无情剑</name><author>古龙</author><year>1995</year></book></bookstore>//主类的执行代码
package com.xml;import javax.xml.parsers.ParserConfigurationException;import javax.xml.parsers.SAXParser;import javax.xml.parsers.SAXParserFactory;import org.xml.sax.SAXException;import org.xml.sax.SAXParseException;public class Sax {//通过SAX方式解析xml文件public static void jiexi() throws Exception{SAXParserFactory factory=SAXParserFactory.newInstance();SAXParser p=factory.newSAXParser();hand h= new hand();//创建一个hander对象p.parse("books.xml", h);}public static void main(String[] args) throws Exception{jiexi();}}
//重写继承自DefaultHandler类中的一些方法,如下:
<span style="font-size:24px;">package com.xml;import org.xml.sax.Attributes;import org.xml.sax.SAXException;import org.xml.sax.helpers.DefaultHandler;public class hand extends DefaultHandler {int bookindex=1;//重写遍历xml的开始标签和结束标签@Overridepublic void startElement(String uri, String localName, String qName,Attributes attributes) throws SAXException {// TODO Auto-generated method stubsuper.startElement(uri, localName, qName, attributes);//当属性名为book时开始解析if(qName.equals("book")){System.out.println("---开始对第"+bookindex+"书进行解析---");int a=attributes.getLength();//输出属性名:System.out.println("属性名为:"+qName);//遍历属性for(int i=0;i<a;i++){System.out.println("属性值为:"+attributes.getValue(i));}}else{if(!qName.equals("bookstore")){System.out.print("节点名为:"+qName+" ");}}}@Overridepublic void endElement(String uri, String localName, String qName)throws SAXException {// TODO Auto-generated method stubsuper.endElement(uri, localName, qName);if(qName.equals("book")){System.out.println("---结束对第"+bookindex+"书进行解析---");bookindex++;}}</span><span style="font-size:32px;">//重写开始解析和结束解析的方法</span><span style="font-size:24px;">@Overridepublic void startDocument() throws SAXException {// TODO Auto-generated method stubsuper.startDocument();System.out.println("开始解析");}@Overridepublic void endDocument() throws SAXException {// TODO Auto-generated method stubsuper.endDocument();System.out.println("结束解析");}/* (non-Javadoc) * @see org.xml.sax.helpers.DefaultHandler#characters(char[], int, int) */@Overridepublic void characters(char[] ch, int start, int length)throws SAXException {// TODO Auto-generated method stubsuper.characters(ch, start, length);String str= new String(ch, start, length);//如果去掉空格部为空if(!str.trim().equals("")){System.out.println("节点值为:"+str);}}}</span>
0 0
- javaIO--通过SAX方式解析xml文件简例
- 通过Sax方式解析xml文件
- jaxp通过sax方式解析xml文件
- java--通过sax方式解析xml文件的简单实例
- SAX方式解析XML文件
- xml文件--SAX方式解析xml文件
- 通过SAX方式生成xml文件
- 通过SAX方法解析xml文件
- Android SAX方式解析XML文件
- JAVA SAX 方式解析XML文件
- android XML 文件解析~SAX方式!
- android解析xml文件的SAX方式
- XML文件解析(SAX方式)
- JAVA SAX 方式解析XML文件
- XML文件解析(SAX方式)
- Qt 中sax方式 解析 xml文件
- 【JAXP】SAX方式解析XML文件
- SAX方式解析xml文件查看天气
- CString类常用方法----Left(),Mid(),Right(),Left()
- Java NIO AsynchronousFileChannel
- 从系统相册选择多张图片
- 网络编程---模仿新闻客户端
- 如果字符串是科学:如123213e21,转化为字符串
- javaIO--通过SAX方式解析xml文件简例
- 如何判断ios设备类型
- 被忽略的才是要学的,才是重要的每一刻
- 结构体对齐规则总结与学习
- 这些在安装Windows 10时常用到的(类似备忘录)
- ex.
- 在Xcode中使用Git进行源码版本控制
- String painter(DP综合题:区间DP(两次DP))
- python中的常用函数