- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有这样一个 XML
<IS>
<Value>
<Signature>-804</Signature>
<Amount>139</Amount>
</Value>
<Value>
<Signature>-845</Signature>
<Amount>639466</Amount>
</Value>
<Value>
<Signature>-811</Signature>
<Amount>16438344</Amount>
</Value>
<Value>
<Signature>-1115</Signature>
<Amount>-159733</Amount>
</Value>
</IS>
现在我只想从中解析特定值。例如,如何获取具有相应签名的节点的值 -804
请帮帮我..
我了解 NSXMLParser 的基础知识,但不知道如何实现条件解析。
谢谢。
最佳答案
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict{
currentKey = nil;
[currentStringValue release];
currentStringValue = nil;
if([elementName isEqualToString:@"Value"]){
//alloc some object to parse value into
} else if([elementName isEqualToString:@"Signature"]){
currentKey = @"Signature";
return;
}
}
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string{
if(currentKey){
if(!currentStringValue){
currentStringValue = [[NSMutableString alloc] initWithCapacity:200];
}
[currentStringValue appendString:string];
}
}
-(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName{
if([elementName isEqualToString:@"Signature"] && [currentStringValue intValue] == 804){
ivar.signature = [currentStringValue intValue];
return;
}
}
是这样的。请注意,我还没有真正在编译器上测试过这段代码,所以这里和那里会有语法错误。
关于iphone - NSXMLParser 示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4705588/
我在 NSXMLParser 中崩溃了 * Terminating app due to uncaught exception 'NSInternalInconsistencyException',
我有 NSXMLParser 问题,我尝试了 iOS8 NSXMLParser crash这个话题,但我真的没有得到解决方案。 我正在创建另一个 NXSMLParser 委托(delegate)并将其
我目前正在尝试使用外部已解析实体引用来解析包含另一个 XML 的 XML。但是,NSXMLParser 会引发错误,而不是解析包含的 XML。 xml 看起来有点像这样: ]>
我正在使用 NSXMLParser 来解析此 XML:http://itunes.apple.com/gb/rss/topsongs/limit=50/explicit=true/xml 。我正在尝试
NSXMLParser 是什么样的解析器? 是 dom 解析器还是 sax 解析器。 有多少个解析器? 最佳答案 它是一个 SAX 解析器。有许多可用于 iOS 的 DOM XML 解析器,我见过的最
我有以下泄漏的代码。 Instruments 表示,泄漏的是 rssParser 对象。我“刷新”了 XML 提要,它运行了该 block 并且发生了泄漏...... 文件.h @interface
如何将本地路径传递给NSXMLParser 像这样 NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithContentsOfURL:storeP
我使用从互联网获取的可变数据初始化 NSXMLParser。我想知道解析器是否在释放时释放它,或者我必须在解析后释放它? 谢谢 最佳答案 Cocoa 使用“这不是我的问题”来比喻内存管理。 如果将某些
我有以下 XML(为 iPhone 开发一个应用程序): 00070431 John Doe ... 如何仅检索其中一个属性的值,例如属性 name="given_name"的值“John”? 感
下面是 MREntitiesConverter 对象的 @interface,我使用 NSXMLParser 从字符串中剥离所有 html 标签。 @interface MREntitiesConve
我想编写一个 NSXMLParser,我在 NSString(已编码)中有数据。 如果我将 NSString 放入 NSLog,它会给出我需要的正确行。但是,当我想使用来自 NSString 的数据启
这与我之前的问题类似。我没有得到答案,也许通过改变问题我可能会得到答案。 这是我的解析代码: -(void) parser:(NSXMLParser *) parser didStartElemen
我正在尝试解析一些简单的东西,但我不知道该怎么做..我已经解析了之前有一些 xml,但这个结构没有任何内容,所以我有点迷失。 这是 xml。
我正在我的应用程序中解析 XML 文件,最奇怪的事情发生了。它在多个元素之后停止,没有完成该元素,但解析方法仍然返回成功。我感觉某个地方有一个错误的角色,但无法弄清楚。有谁知道为什么它在解析过程中停止
我想解析 [description] [p] blah blah [/description] [/p] 中包含的描述 Jon Greene named associate director
我正在尝试从 xml 网络源获取内容列表。我正在使用 NSXMLParser atm。 代码如下: - (void)main { self.workingArray = [NSMutableA
我有这样的xml数据 dendritical Empty மரம
我刚刚阅读了一个关于 nsxmlparsing 的不同问题的答案。其中有人说你应该使用 self。更好的内存管理符号...这是什么意思? 我在初始化字典时遗漏了这个,我应该把它放进去吗?它有多大帮助或
我在 XML 中有一行包含 % 符号。但是 NSXMLParser 也改变了一些数字,如下所示 2013-11-16 01:08:07.102 ECP[46386:a0b] string is Inc
我正在尝试解析一个 xml 文件(下面的链接)以获取所有带有标签的文本。我能够做到这一点,但解析器忽略了以破折号 (-) 结尾的行并仅将其替换为破折号(请参见下面的示例),并且一些带有说话标记的说话标
我是一名优秀的程序员,十分优秀!