您的位置:首页 > 其它

解析xml数据的简单demo

2013-03-27 00:22 393 查看


写一个解析XML数据的简单Demo(以KissXml为例)    (在iOS代码库中浏览本帖)

1、添加附件里面的KissXML到工程

2、加入libxml2.dylib 到Frameworks

3、修改工程信息,右击Targets下工程名选“Get Info”,进入修改Header Search Paths值为:/usr/include/libxml2,如附件图

附件2为Demo,可运行。
可在csdn下载中下载KissXML.zip和parserDataWithKissXml.zip

PS:本Demo是以解析本地数据为例,解析网页数据可用:

NSString *content = [NSString stringWithContentsOfURL: url  

                                                 encoding:NSUTF8StringEncoding

                                                    error:&error];

    [string release];

    [self parsedDataFromString:content];

}  

-(void)parsedDataFromString:(NSString *)str{

    [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES];

    DDXMLDocument *doc = [[DDXMLDocument alloc] initWithXMLString:str options:0 error:nil];

/////解析

    NSArray *items = [doc nodesForXPath:kXML error:nil];

    

    for (DDXMLElement *obj in items) {

        xmlData *data = [[xmlData alloc] init];

        

        DDXMLElement *aUser = [obj elementForName:KUSER];

        if(aUser)

            data.user = aUser.stringValue;

        DDXMLElement *aTitle = [obj elementForName:KTITLE];

        if(aTitle)

            data.title = aTitle.stringValue;

        DDXMLElement *content = [obj elementForName:KCONTENT];

        if(content)

            data.content = content.stringValue;

        NSDictionary *XmlDictionary;

        XmlDictionary = [NSDictionary dictionaryWithObjectsAndKeys:

                         data.user,@"kUsers",

                         data.title,@"kTitles",

                         data.content,@"kContents",

                         nil];

        [self performSelectorInBackground:@selector(parsedXml:) withObject:XmlDictionary];

        [data release];

    }

    [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO];

    [doc release];

}

图片:Screen shot 2011-01-17 at 下午03.20.05.png 



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: