SAX解析XML
系统
2588 0
-
package
com.xml.parseXml;
-
-
import
java.io.InputStream;
-
import
java.util.Stack;
-
-
import
javax.xml.parsers.SAXParser;
-
import
javax.xml.parsers.SAXParserFactory;
-
-
import
org.xml.sax.Attributes;
-
import
org.xml.sax.InputSource;
-
import
org.xml.sax.SAXException;
-
import
org.xml.sax.helpers.DefaultHandler;
-
-
import
com.xml.bean.Address;
-
import
com.xml.bean.ReadXmlFileStream;
-
-
public
class
SAXParseXml
extends
DefaultHandler {
-
-
-
private
static
Address address =
new
Address();
-
-
private
Stack tags =
new
Stack();
-
-
public
SAXParseXml() {
-
-
}
-
-
@Override
-
public
void
characters(
char
[] ch,
int
start,
int
length)
-
throws
SAXException {
-
-
String tag = (String) tags.peek();
-
if
(tag.equals(
"no"
)) {
-
address.setNo(
new
String(ch, start, length));
-
System.out.println(address.getNo());
-
}
-
if
(tag.equals(
"addr"
)) {
-
address.setAddr(
new
String(ch, start, length));
-
System.out.println(address.getAddr());
-
}
-
}
-
-
@Override
-
public
void
startElement(String uri, String localName, String qName,
-
Attributes attrs)
throws
SAXException {
-
tags.push(qName);
-
}
-
-
public
static
void
main(String[] args) {
-
-
long
lasting = System.currentTimeMillis();
-
-
try
{
-
SAXParserFactory factory = SAXParserFactory.newInstance();
-
SAXParser sp = factory.newSAXParser();
-
SAXParseXml reader =
new
SAXParseXml();
-
InputStream in = ReadXmlFileStream.getXmlFileStream();
-
sp.parse(
new
InputSource(in), reader);
-
System.out.println(
"运行时间:"
+ (System.currentTimeMillis() - lasting)
-
+
" 毫秒"
);
-
-
}
catch
(Exception e) {
-
e.printStackTrace();
-
}
-
}
-
-
}
-
package
com.xml.parseXml;
-
-
import
java.io.InputStream;
-
import
java.util.Stack;
-
-
import
javax.xml.parsers.SAXParser;
-
import
javax.xml.parsers.SAXParserFactory;
-
-
import
org.xml.sax.Attributes;
-
import
org.xml.sax.InputSource;
-
import
org.xml.sax.SAXException;
-
import
org.xml.sax.helpers.DefaultHandler;
-
-
import
com.xml.bean.Address;
-
import
com.xml.bean.ReadXmlFileStream;
-
-
public
class
SAXParseXml
extends
DefaultHandler {
-
-
-
private
static
Address address =
new
Address();
-
-
private
Stack tags =
new
Stack();
-
-
public
SAXParseXml() {
-
-
}
-
-
@Override
-
public
void
characters(
char
[] ch,
int
start,
int
length)
-
throws
SAXException {
-
-
String tag = (String) tags.peek();
-
if
(tag.equals(
"no"
)) {
-
address.setNo(
new
String(ch, start, length));
-
System.out.println(address.getNo());
-
}
-
if
(tag.equals(
"addr"
)) {
-
address.setAddr(
new
String(ch, start, length));
-
System.out.println(address.getAddr());
-
}
-
}
-
-
@Override
-
public
void
startElement(String uri, String localName, String qName,
-
Attributes attrs)
throws
SAXException {
-
tags.push(qName);
-
}
-
-
public
static
void
main(String[] args) {
-
-
long
lasting = System.currentTimeMillis();
-
-
try
{
-
SAXParserFactory factory = SAXParserFactory.newInstance();
-
SAXParser sp = factory.newSAXParser();
-
SAXParseXml reader =
new
SAXParseXml();
-
InputStream in = ReadXmlFileStream.getXmlFileStream();
-
sp.parse(
new
InputSource(in), reader);
-
System.out.println(
"运行时间:"
+ (System.currentTimeMillis() - lasting)
-
+
" 毫秒"
);
-
-
}
catch
(Exception e) {
-
e.printStackTrace();
-
}
-
}
-
-
}
SAX解析XML
更多文章、技术交流、商务合作、联系博主
微信扫码或搜索:z360901061
微信扫一扫加我为好友
QQ号联系: 360901061
您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。
【本文对您有帮助就好】元