如何使用SAX使用iphonesdk将属性和值解析为URL路径?

如何使用SAX使用iphonesdk将属性和值解析为URL路径?,iphone,attributes,saxparser,Iphone,Attributes,Saxparser,我正在尝试用SAX进行解析,我认为一个好的起点是在iPhone开发中心找到的TopSongs示例。我得到了大部分,但是当涉及到在节点中获取属性和值时,我在任何地方都找不到一个好的例子。XML有一个指向coverArt的URL的路径。XML节点如下所示 <itms:coverArt height="60" width="60">http://a1.phobos.apple.com/us/r1000/026/Music/aa/aa/27/mzi.pbxnbfvw.60x60-50.jpg

我正在尝试用SAX进行解析,我认为一个好的起点是在iPhone开发中心找到的TopSongs示例。我得到了大部分,但是当涉及到在节点中获取属性和值时,我在任何地方都找不到一个好的例子。XML有一个指向coverArt的URL的路径。XML节点如下所示

<itms:coverArt height="60" width="60">http://a1.phobos.apple.com/us/r1000/026/Music/aa/aa/27/mzi.pbxnbfvw.60x60-50.jpg</itms:coverArt>  
然后,像这样,在最后只使用localname再次拾取它

if (!strncmp((const char *)localname, kName_CoverArt, kLength_CoverArt)) { importer.currentSong.coverArt = [NSURL URLWithString:importer.currentString];  

跟踪为-[Song setCoverArt:]:发送到实例的选择器无法识别

听起来好像您还没有在Song类中使用@synthesis关键字合成coverArt属性。这就是创建-[Song setCoverArt:]方法的原因,当您在currentSong上设置coverArt属性时,会调用该方法。

感谢您的建议,它遵循与Song类中设置为@dynamic的其他节点相同的结构。但我认为你是对的,它没有正确地添加到数据模型中。此后,我尝试只添加另一个没有属性的节点,它产生了相同的错误结果。我没有将新属性添加到引发错误的数据模型文件中。现在我有我没有得到错误,但我也没有得到数据。因此,上面的结构中肯定缺少一些东西。我可以通过对节点的单个调用以字符串的形式访问数据,但问题是,对于不同的图片大小,有三个节点。所以我仍然需要知道如何联系其他人。好的,我越来越近了。我需要做一个for循环来收集正确的属性。现在的问题是处理endelementSAX。尽管2个条目没有数据,但它仍在提取所有三个条目。
if (!strncmp((const char *)localname, kName_CoverArt, kLength_CoverArt)) { importer.currentSong.coverArt = [NSURL URLWithString:importer.currentString];