Java的SAX解析代码二
来源:互联网 发布:正规网络彩票关注网站 编辑:程序博客网 时间:2024/05/18 19:18
package com.imooc.learn2;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
public class SaxParseHandler extends DefaultHandler {
private static int c=0;
/**
* 用来遍历xml文件的开始标签
*@Descriptioon
* @作者 豆云谦
*@Create 下午8:01:39
*/
@Override
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException {
// TODO Auto-generated method stub
super.startElement(uri, localName, qName, attributes);
if (qName.equals("book")) {
c=c+1;
System.out.println("======开始遍历第"+(c)+"本书=====");
//已知book的属性名称,获取属性值
// String value=attributes.getValue("id");
// System.out.println("book的id属性值是:"+value);
//在不知道book的属性名称和个数的时候
int num=attributes.getLength();
for (int i = 0; i <num; i++) {
System.out.print("Book元素的"+(i+1)+"个属性名:"+attributes.getQName(i));
System.out.println("--该元素的属性值是:"+attributes.getValue(i));
}
}else if (!qName.equals("bookstore") && !qName.equals("book")) {
System.out.print("节点名是:"+qName);
}
}
/**
* 用来遍历xml的结束标签
*@Descriptioon
* @作者 豆云谦
*@Create 下午8:01:52
*/
@Override
public void endElement(String uri, String localName, String qName)
throws SAXException {
// TODO Auto-generated method stub
super.endElement(uri, localName, qName);
if (qName.equals("book")) {
System.out.println("======结束遍历第"+(c)+"本书=====");
}
}
/**
* 用来标志解析开始
*@Descriptioon
* @作者 豆云谦
*@Create 下午8:02:43
*/
@Override
public void startDocument() throws SAXException {
// TODO Auto-generated method stub
super.startDocument();
System.out.println("Sax解析开始");
}
/**
* 用来标志解析结束
*@Descriptioon
* @作者 豆云谦
*@Create 下午8:03:05
*/
@Override
public void endDocument() throws SAXException {
// TODO Auto-generated method stub
super.endDocument();
System.out.println("Sax解析结束");
}
/**
*
*@Descriptioon
* @作者 豆云谦
*@Create 下午8:42:20
*/
@Override
public void characters(char[] ch, int start, int length)
throws SAXException {
// TODO Auto-generated method stub
super.characters(ch, start, length);
String value=new String(ch, start, length);
if (!value.trim().equals("")) {
System.out.println(">>>"+value);
}
}
}
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
public class SaxParseHandler extends DefaultHandler {
private static int c=0;
/**
* 用来遍历xml文件的开始标签
*@Descriptioon
* @作者 豆云谦
*@Create 下午8:01:39
*/
@Override
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException {
// TODO Auto-generated method stub
super.startElement(uri, localName, qName, attributes);
if (qName.equals("book")) {
c=c+1;
System.out.println("======开始遍历第"+(c)+"本书=====");
//已知book的属性名称,获取属性值
// String value=attributes.getValue("id");
// System.out.println("book的id属性值是:"+value);
//在不知道book的属性名称和个数的时候
int num=attributes.getLength();
for (int i = 0; i <num; i++) {
System.out.print("Book元素的"+(i+1)+"个属性名:"+attributes.getQName(i));
System.out.println("--该元素的属性值是:"+attributes.getValue(i));
}
}else if (!qName.equals("bookstore") && !qName.equals("book")) {
System.out.print("节点名是:"+qName);
}
}
/**
* 用来遍历xml的结束标签
*@Descriptioon
* @作者 豆云谦
*@Create 下午8:01:52
*/
@Override
public void endElement(String uri, String localName, String qName)
throws SAXException {
// TODO Auto-generated method stub
super.endElement(uri, localName, qName);
if (qName.equals("book")) {
System.out.println("======结束遍历第"+(c)+"本书=====");
}
}
/**
* 用来标志解析开始
*@Descriptioon
* @作者 豆云谦
*@Create 下午8:02:43
*/
@Override
public void startDocument() throws SAXException {
// TODO Auto-generated method stub
super.startDocument();
System.out.println("Sax解析开始");
}
/**
* 用来标志解析结束
*@Descriptioon
* @作者 豆云谦
*@Create 下午8:03:05
*/
@Override
public void endDocument() throws SAXException {
// TODO Auto-generated method stub
super.endDocument();
System.out.println("Sax解析结束");
}
/**
*
*@Descriptioon
* @作者 豆云谦
*@Create 下午8:42:20
*/
@Override
public void characters(char[] ch, int start, int length)
throws SAXException {
// TODO Auto-generated method stub
super.characters(ch, start, length);
String value=new String(ch, start, length);
if (!value.trim().equals("")) {
System.out.println(">>>"+value);
}
}
}
0 0
- Java的SAX解析代码二
- Java的SAX解析代码一
- java解析与生成xml(二): SAX
- SAX轻松入门(二)--带验证的SAX解析
- 二十、XML的SAX解析
- sax解析xml(二)
- 二、SAX解析XML
- JAVA解析XML文件(二)---SAX方式解析
- Sax解析代码片段
- Sax解析代码
- 不依赖第三方jar包的通过java sax解析本地xml文件的实例代码
- 不依赖第三方jar包的通过java sax解析本地xml文件的实例代码
- Java 解析xml的方法:DOM,SAX
- JAVA 的XML编程SAX解析
- java中用sax解析xml的步骤
- java XML的SAX解析方式
- Java中用SAX解析XML完整实例代码
- Java用dom和sax解析xml代码(Jaxp)
- 【Bzoj3626】LCA
- zookeeper集群安装详解(Centos系统)
- Stack(5)对栈排序不用循环空间复杂度O(1)
- PTA习题 5-4 是否同一棵二叉搜索树(二叉搜索树的构建以及相同树的判断)
- 网易游戏2017实习生招聘-小结
- Java的SAX解析代码二
- hadoop学习总结
- 如何把自己的项目上传到GitHub上
- BZOJ2618凸多边形
- 读书笔记之--Java虚拟机精讲第六章内存分配与垃圾回收
- 一起学python(四)
- Delphi XE2 and C++ Builder XE2 Update4 HotFix1
- JUnit4单元测试报错问题 :method initializationerror not found
- 通用Adapter的实现套路(ListView篇)