SAX解析XML文件

//MainActivity.java

 //创建SAXParserFactory

SAXParserFactory factory = SAXParserFactory.newInstance();
XMLReader reader = factory.newSAXParser().getXMLReader();

//为xmlReader设置内容处理器
 reader.setContentHandler(new MyContent());
//开始解析文件
 reader.parse(new InputSource(new StringReader(XMLFile.xml)));

//MyContent.java

//读取根
public void startDocument() throws SAXException {

 System.out.println("======begin=========");
 }
//开始读取元素
 public void startElement(String uri, String localName, String name,Attributes attr) throws SAXException {
 tagName = localName;//不带前缀的name   name是带前缀的
  if(localName.equals("string")){
  for(int i = 0;i<attr.getLength();i++){
   System.out.println(attr.getLocalName(i)+"="+attr.getValue(i));
}
}
  }
//读取内容
 public void characters(char[] ch, int start, int length)
 throws SAXException {
  if(tagName.equals("string")){
     hisname = new String(ch,start,length);
 }else if(tagName.equals("dddd")){
        dddd = new String(ch,start,length);
              }
       }
       
  //结束读取元素
 public void endElement(String uri, String localName, String name)
 throws SAXException {
 if(localName.equals("string")){
    printout();
            }

       }

  public void endDocument() throws SAXException {
              System.out.println("======end=========");
       }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值