我是iPhone开发新手,这个问题可能很简单,但我不知道答案。
问题:--我有以下代码:
<im:image height="53">
picture52x52.jpg
</im:image>
<im:image height="75">
picture75x75.jpg
</im:image>
<im:image height="100">
picture100x100.jpg
</im:image>我只需要解析第二个元素(第二个元素,第二个图片),但我不知道如何解析。我总是解析三个元素,但我只需要一个。
发布于 2011-10-20 12:23:18
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
NSString *imageSize = [NSString stringWithString:[attributeDict valueForKey:@"height"]];
if([imageSize isEqualToString:@"75"])
{
// parse something like this
}
}发布于 2011-10-20 12:32:11
您必须明智地使用这两种方法:
parser:foundCharacters:
parser:didEndElement:namespaceURI:qualifiedName:请参阅此链接- 处理XML元素和属性
发布于 2011-10-21 06:32:20
让我再建议你一个解决方案,你可以把图片名字放在CDATA里面。生成这样的xml -
<im:image height="53">
<![CDATA[picture52x52.jpg]]>
</im:image>
<im:image height="75">
<![CDATA[picture75x75.jpg]]>
</im:image>
<im:image height="100">
<![CDATA[picture100x100.jpg]]>
</im:image>并简单地使用此委托方法:
- (void)parser:(NSXMLParser *)parser foundCDATA:(NSData *)CDATABlock
如果它是包含在CDATA块中的唯一元素,则为。
希望你能理解;)
https://stackoverflow.com/questions/7835822
复制相似问题