如何解析不同类型的xml数据或类似于xml结构 [英] how to parse different type of xml data or similar to xml structure

查看:106
本文介绍了如何解析不同类型的xml数据或类似于xml结构的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经使用iPhone扫描了图像,并得到了以下类型的结果.

I have scanned a image using my iphone and get the below type result.

<?xml version="1.0" encoding="UTF-8"?>
<PrintLetterBarcodeData uid="229636134720" name="Nandan Mohan Nilekani" gender="M" 
    yob="1955" house="856, 13th Main , 3rd Block" loc="Koramangala" vtc="Bangalore South" 
    po="Koramangala" dist="Bangalore" state="Karnataka" pc="560034"/>

如何最好地分割或解析上述xml数据.

How can best way to split or parse the above xml data.

推荐答案

请检查此代码

    - (void)viewDidLoad{

[super viewDidLoad];

NSString *DataPath = @"<PrintLetterBarcodeData uid=\"229636134720\" name=\"Nandan Mohan Nilekani\" gender=\"M\" yob=\"1955\" house=\"856, 13th Main , 3rd Block\" loc=\"Koramangala\" vtc=\"Bangalore South\" po=\"Koramangala\" dist=\"Bangalore\" state=\"Karnataka\" pc=\"560034\"/>";
NSData* data=[DataPath dataUsingEncoding:NSUTF8StringEncoding];;
NSXMLParser* rssParser = [[NSXMLParser alloc] initWithData:data];

[rssParser setDelegate:self];
[rssParser setShouldProcessNamespaces:NO];
[rssParser setShouldReportNamespacePrefixes:NO];
[rssParser setShouldResolveExternalEntities:NO];
[rssParser parse];}

- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName  namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qualifiedName
attributes:(NSDictionary *)attributeDict {

NSDictionary* dic;

currentElementValue = [[NSMutableString alloc] init];
if ([elementName isEqualToString:@"PrintLetterBarcodeData"])
{
    dic=attributeDict;
}
NSLog(@"%@",dic);}

输出: {

dist =班加罗尔;

dist = Bangalore;

gender = M;

house = "856, 13th Main , 3rd Block";

loc = Koramangala;

name = "Nandan Mohan Nilekani";

pc = 560034;

po = Koramangala;

state = Karnataka;

uid = 229636134720;

vtc = "Bangalore South";

yob = 1955;

}

这篇关于如何解析不同类型的xml数据或类似于xml结构的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆