频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

SAX解析XML

来源:www.jspcn.net 作者: 出处:巧巧读书 2007-10-03 进入讨论组

  package simpleTest;

import org.xml.sax.Attributes;

import org.xml.sax.SAXException;

import org.xml.sax.Locator;

import org.xml.sax.ContentHandler;

import org.xml.sax.InputSource;

import org.xml.sax.helpers.DefaultHandler;

import java.io.IOException;

import javax.xml.parsers.SAXParser;

import javax.xml.parsers.SAXParserFactory;

class TestSAX extends DefaultHandler

{

private StringBuffer buf;

public TestSAX()

{

super();

}

public void setDocumentLocator(Locator locator)

{

}

public void startDocument() throws SAXException

{

buf=new StringBuffer();

System.out.println("*******开始解析文档*******");

}

public void endDocument() throws SAXException

{

System.out.println("*******文档解析结束*******");

}

public void startPrefixMapping( String prefix, String uri )

{

System.out.println(" 前缀映射: " + prefix +" 开始!"+ " 它的URI是:" + uri);

}

public void endPrefixMapping( String prefix )

{

System.out.println(" 前缀映射: "+prefix+" 结束!");

}

public void processingInstruction( String target, String instruction )

throws SAXException

{

}

public void ignorableWhitespace( char[] chars, int start, int length ) throws SAXException

{

}

public void skippedEntity( String name ) throws SAXException

{

}

public void startElement(String namespaceURI,String localName,String qName,Attributes atts)

{

System.out.println("*******开始解析元素*******");

System.out.println("元素名"+qName);

for(int i=0;i<atts.getLength();i++)

{

System.out.println("元素名"+atts.getLocalName(i)+"属性值"+atts.getValue(i));

}

}

public void endElement(String namespaceURI,String localName,String fullName )throws SAXException

{

System.out.println("******元素解析结束********");

}

public void characters( char[] chars, int start, int length )throws SAXException

{

//将元素内容累加到StringBuffer中

buf.append(chars,start,length);

}

public static void main(String args[])

{

try{

SAXParserFactory sf = SAXParserFactory.newInstance();

SAXParser sp = sf.newSAXParser();

TestSAX testsax=new TestSAX();

sp.parse(new InputSource("D:\test\simpleTest\classes\simpleTest\test.xml"),testsax);

}catch(IOException e)

{

e.printStackTrace();

}catch(SAXException e)

{

e.printStackTrace();

}catch(Exception e)

{

e.printStackTrace();

}

}

}

XML文件如下:

<?xml version="1.0" encoding="gb2312"?>

<row>

<person>

<name>王小明</name>

<college>信息学院</college>

<telephone>6258113</telephone>

<notes>男,1955年生,博士,95年调入海南大学</notes>

</person>

</row>URL查看 http://www.qqread.com/xml-soap/f972890601.html 更多文章 更多内容请看XML详解基础教程专题,或进入讨论组讨论。
收藏此文】【 】【打印】【关闭
较早的文章:简析JAVA中的XML编程

较新的文章:FOR XML子句分析
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
讨论组问题推荐
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章