NSXMLParser自定义的一个xml解析工具

//
//  DenglXMLParser.h
//

#import <Foundation/Foundation.h>

@interface DenglXMLParser : NSXMLParser<NSXMLParserDelegate>

@property (nonatomic,strong) NSMutableArray *array;

@end
//
//  DenglXMLParser.m
//

#import "DenglXMLParser.h"

@interface DenglXMLParser ()

@end

@implementation DenglXMLParser

#pragma mark - <NSXMLParserDelegate>
/**
 * 解析到某个元素的结尾
 */
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
    //    NSLog(@"didEndElement - %@", elementName);
}

/**
 * 解析到某个元素的开头
 */
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
//    NSLog(@"%@---%@",elementName,attributeDict);
    if ([elementName isEqualToString:@"item"]) {
        [self.array addObject:attributeDict];
    }
}

/**
 * 开始解析XML文档
 */
- (void)parserDidStartDocument:(NSXMLParser *)parser
{
    //    NSLog(@"parserDidStartDocument");
    self.array = [NSMutableArray array];
}

/**
 * 解析完毕
 */
- (void)parserDidEndDocument:(NSXMLParser *)parser
{
    //    NSLog(@"parserDidEndDocument");
}

@end
时间: 2024-10-11 10:32:34

NSXMLParser自定义的一个xml解析工具的相关文章

Java中XML解析工具范例

1.直接代码部分: 1 import java.io.File; 2 import java.io.FileInputStream; 3 import java.util.List; 4 import org.jdom.Document; 5 import org.jdom.Element; 6 import org.jdom.input.SAXBuilder; 7 import org.xml.sax.InputSource; 8 9 /** 10 * 作用: XML解析工具类,其中的属性根据

xml解析工具-jdom

前言:近期接触SSH框架的时候,经常得配置一下xml文件:今天闲来没事就挖挖xml解析的原理供大伙儿分享.本文主要通过一个简单的例子解析一个xml文件.明白其中缘由之后,大家想定义自己的xml也绝非难事~ JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析.生成.序列化以及多种操作.其解析步骤其实很简单,可以将一个xml文件类比一棵树.首先从根节点开始解析,之后遍历左右孩子结点,孩子结点再递归解析孩子结点...(注意,遍历的时候应该区别于深度优先遍历,准确的理解应该

【Web基础】XML解析工具比较

DOM解析: 一次全部读入内存,随意存放修改,读取任何部分,次数无限制,异于开发,系统为开发者自动建立DOM树,XML对象模型由系统自动提供.缺点:需要一次读入内存,受文件大小限制,耗内存. SAX解析: 优点:顺序读入一部分进内存,不会一次加载,不受文件限制,由于部分读取.缺点:只能对文件按顺序读取解析,不能随机存取,不能修改,开发复杂,用户需自己定义时间处理.但开发比较灵活,可以用SAX建立自己的XML对象模型. JDOM:综合DOM解析和SAX解析的优点. DOM4J:强大,Hiberna

XML解析工具类

public class XmlUtil { /* * 利用dom4j解析xml文件内容,并返回map数据形式 * path是.xml文件所在的路径 */ public static Map<String,String> paserXmlByDOM4J(String path) throws Exception{ path=ServletActionContext.getServletContext().getRealPath(path); SAXReader reader = new SAX

微信支付 XML解析工具类

发送请求SortedMap<String, String> 格式的,需要将其解析为XML格式的字符串 package utils; import java.io.ByteArrayInputStream; import java.io.IOException; import java.io.InputStream; import java.io.UnsupportedEncodingException; import java.util.HashMap; import java.util.It

python 一个XML解析

''' Version:0.5 author;wujianqiang date:2016/11/13 ''' import xml.etree.ElementTree as ET from collections import Counter from pprint import pprint import json from fnmatch import fnmatch import os class XMLParse(object):     def __init__(self):     

java自带的xml解析工具类

1 public class JaxbUtil { 2 3 /** 4 * java对象转换为xml文件 5 * 6 * @param xmlPath xml文件路径 7 * @param load java对象.Class 8 * @return xml文件的String 9 * @throws JAXBException 10 */ 11 public static String beanToXml(Object obj, Class<?> load) throws JAXBExcepti

iOS开发之网络数据解析(二)--XML解析简介

前言:本篇随笔介绍的是XML解析. 正文: 1.XML解析方式有2两种: DOM:一次性将整个XML数据加载进内存进行解析,比较适合解析小文件 SAX:从根元素开始,按顺序一个元素一个元素往下解析,比较适合解析大文件 2.IOS中XML解析方案有很多种: 2-1.第三方框架: libxml2:纯C语言,默认包含在iOS SDK中,同时支持DOM和SAX解析 GDataXML:DOM方式解析,由Google开发,基于libxml2 2-2.苹果原生 NSXMLParser:SAX方式解析,使用简单

XML解析方式与解析工具

DOM解析原理: 1)JAXP (oracle-Sun公司官方) 2)JDOM工具(非官方) 3)Dom4J工具(非官方) 三大框架(默认读取xml的工具就是Dom4j) ....... SAX解析原理: 1)Sax解析工具(oracle-sun公司官方) Dom4j工具,非官方,不在jdk中. 需要导入dom4j的核心包. 如:dom4j-1.6.1.jar 简单运用: public static void main(String[] args) { try { //1.创建一个xml解析器对