Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
rssfeedxml&;ATOM解析问题-GData-iPhone_Iphone_Xml_Rss_Xml Parsing_Gdata - Fatal编程技术网

rssfeedxml&;ATOM解析问题-GData-iPhone

rssfeedxml&;ATOM解析问题-GData-iPhone,iphone,xml,rss,xml-parsing,gdata,Iphone,Xml,Rss,Xml Parsing,Gdata,我有一个关于XLM文档更精确地解析ATOM格式数据的问题。(RSS提要) 以下是xlm文档的示例: <item> <title>Panty + Stocking Print Preview</title> <link>http://SonicRocksMySocks.deviantart.com/art/Panty-Stocking-Print-Preview-200615179</link&g

我有一个关于XLM文档更精确地解析ATOM格式数据的问题。(RSS提要)

以下是xlm文档的示例:

<item>
            <title>Panty + Stocking Print Preview</title>
            <link>http://SonicRocksMySocks.deviantart.com/art/Panty-Stocking-Print-Preview-200615179</link>
            <guid isPermaLink="true">http://SonicRocksMySocks.deviantart.com/art/Panty-Stocking-Print-Preview-200615179</guid>
            <pubDate>Fri, 11 Mar 2011 21:43:34 PST</pubDate>
            <media:title type="plain">Panty + Stocking Print Preview</media:title>

            <media:keywords></media:keywords>
            <media:rating>nonadult</media:rating>
            <media:category label="Movies &amp; TV">fanart/digital/drawings/movies</media:category>
            <media:credit role="author" scheme="urn:ebu">SonicRocksMySocks</media:credit>
            <media:credit role="author" scheme="urn:ebu">http://a.deviantart.net/avatars/s/o/sonicrocksmysocks.png?15</media:credit> 
            <media:copyright url="http://sonicrocksmysocks.deviantart.com">Copyright 2011 *SonicRocksMySocks</media:copyright>
            <media:thumbnail url="http://th00.deviantart.net/fs71/300W/i/2011/070/d/c/panty___stocking_print_preview_by_sonicrocksmysocks-d3bfvnv.png" height="351" width="300"/>

            <media:thumbnail url="http://th02.deviantart.net/fs71/150/i/2011/070/d/c/panty___stocking_print_preview_by_sonicrocksmysocks-d3bfvnv.png" height="150" width="128"/>
            <media:content url="http://th08.deviantart.net/fs71/PRE/i/2011/070/d/c/panty___stocking_print_preview_by_sonicrocksmysocks-d3bfvnv.png" height="967" width="826" medium="image"/>
            <media:content url="http://www.deviantart.com/download/200615179/" medium="document"/>
            <description><![CDATA[ The final version of this print will be available for sale at Sakura Con 2011. :3<br /><div><img src="http://th00.deviantart.net/fs71/300W/i/2011/070/d/c/panty___stocking_print_preview_by_sonicrocksmysocks-d3bfvnv.png" alt="thumbnail" /></div> ]]></description>
            <media:description type="html"><![CDATA[ The final version of this print will be available for sale at Sakura Con 2011. :3 ]]></media:description>
        </item>
我不知道如何检索媒体:内容行。我怎么做? 有人能帮我吗

多谢各位,
Andrei

首先,在这个简单的教程中尝试使用NSXMLParsing

http://blancer.com/tutorials/i-phone/76999/parsing-xml-files/

您是否尝试过遍历
项的子项,并在调试器或NSLog中检查它们?

我知道您使用的是哪种代码。其实很简单。你这样做的方式与你获得“标题”、“链接”和“发布日期”的方式相同


之后,您将需要更改RSSEntry的init方法以接受这个新字段。您应该尝试查看定义valueForChild的代码,并了解它是如何使用GDataXML解析器的。或者您可以按照建议使用NSXML。

我不知道您使用的是什么库,但您可能希望将
媒体的
前缀的名称空间定义为XML源中的任何名称空间(检查文档的根元素;它可能是使用
xmlns
属性设置的)在你的GdaxMLElement上,然后用它作为你检索的一部分。对GdaxMLElement有更多了解的人,不管它来自哪个库,可能会更明确。谢谢,但请解释一下我是做什么的?我是一个添加NSLog(@“%@”,item)的新手;接近for循环的开始。您可能会在控制台中获得一些有用的输出。
http://blancer.com/tutorials/i-phone/76999/parsing-xml-files/
 NSArray *channels = [rootElement elementsForName:@"channel"];
for (GDataXMLElement *channel in channels) 
{            

NSString *blogTitle = [channel valueForChild:@"title"];                    

NSArray *items = [channel elementsForName:@"item"];
for (GDataXMLElement *item in items)
{

    NSString *articleTitle = [item valueForChild:@"title"];
    NSString *articleUrl = [item valueForChild:@"link"];            
    NSString *articleDateString = [item valueForChild:@"pubDate"];        
    NSDate *articleDate = [NSDate dateFromInternetDateTimeString:articleDateString formatHint:DateFormatHintRFC822];

    // Right here
    NSString *mediaCont = [item valueForChild:@"media:content"];



    RSSEntry *entry = [[[RSSEntry alloc] initWithBlogTitle:blogTitle 
                                              articleTitle:articleTitle 
                                                articleUrl:articleUrl 
                                               articleDate:articleDate] autorelease];
    [entries addObject:entry];                        

}      
}