首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用TBXML解析

用TBXML解析
EN

Stack Overflow用户
提问于 2013-07-10 16:35:36
回答 1查看 1K关注 0票数 1

因此,我在XML文件的元素中查找一个未定义的元素时遇到了问题。

我能够解析到元素"item"..。

代码语言:javascript
复制
<item key="ser.1.device.000001-3I67-2310.max_sampling_time" label="14459" sev="none" time="1373373210">14459</item>

现在,如果您注意到,在"item“元素的末尾,我需要存储一个未定义的键.我会怎样做呢?下面是另一个例子:(注意没有键定义数据的"300“,这就是我想要存储的)

代码语言:javascript
复制
<item key="mod.dcc.heartbeat" label="" sev="none" time="1373475787">300</item>

在"time“键之后,那个位置总是有一个字符串值,我需要提取它.

这是我使用TBXML的代码。我只需要“添加”一些东西来得到那个元素..。

代码语言:javascript
复制
TBXML *tbxml = [[TBXML alloc] initWithURL:url];
NSLog(@"TBXML: %@", tbxml);

TBXMLElement *status = tbxml.rootXMLElement;
NSString *statusString = [TBXML elementName:status];
NSLog(@"ROOT: %@", statusString);

TBXMLElement *itemElement = [TBXML childElementNamed:@"item" parentElement:status];

NSMutableDictionary *loggerData = [[NSMutableDictionary alloc] init];


do
{

    NSString *key = [TBXML valueOfAttributeNamed:@"key" forElement:itemElement];
    NSString *label = [TBXML valueOfAttributeNamed:@"label" forElement:itemElement];

    NSString *sev = [TBXML valueOfAttributeNamed:@"sev" forElement:itemElement];

    NSString *time = [TBXML valueOfAttributeNamed:@"time" forElement:itemElement];
    NSString *data = [TBXML valueOfAttributeNamed:@"data" forElement:itemElement];
    //NSLog(@"Key = %@ : Label = %@ : Sev = %@ : Time = %@ : Data = %@", key, label, sev, time, data);
    NSArray *array = [[NSArray alloc] initWithObjects:label,sev, time, data, nil];

    [loggerData setObject:array forKey:key];

} while ((itemElement = itemElement->nextSibling));

编辑

NSString *data = [TBXML valueOfAttributeNamed:@"data" forElement:itemElement];转换成NSString *itemValue = [TBXML textForElement:itemElement];就行了!谢谢,谢谢:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-10 17:34:20

14459和300不是键,这是两个实物元素的值。

试一试

代码语言:javascript
复制
NSString *itemValue = [TBXML textForElement:itemElement];
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17576163

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档