使用TBXML解析器确保数据来自XML表

时间:2014-09-14 08:44:52

标签: ios objective-c xml parsing tbxml

长期stackoverflow用户,第一次提问。我是iOS开发的新手。我正在开发一个项目,我需要从XML表中引入数据,为此我选择了TBXML解析器来使用。

我的问题在于将数据放入我的应用程序并在控制台中打印以确保我已经提供了正确的信息。我相信我已经完成了所有正确的步骤并且我的代码很好但我知道我就在那里,只是无法克服在我的应用程序中引入数据的困境

以下是我的应用程序中的代码,我们将非常感谢您提供的任何帮助:

{
    NSURL * sourceXMLUrl = [NSURL URLWithString:@"http://travel.state.gov/_res/rss/TAs.xml"];
    NSData * XMLData = [NSData dataWithContentsOfURL:sourceXMLUrl];

    TBXML * sourceXML = [[TBXML alloc] initWithXMLData:XMLData error:nil];
    NSLog(@"TBXML:%@",sourceXML);
    TBXMLElement * rootElement = sourceXML.rootXMLElement;
    NSLog(@"ROOT:%@",rootElement) 

    TBXMLElement * channelElement = [TBXML childElementNamed:@"channel" parentElement:rootElement];
    TBXMLElement * descriptionElement = [TBXML childElementNamed:@"description" parentElement:channelElement];
    TBXMLElement * itemElement = [TBXML childElementNamed:@"item" parentElement:channelElement];
    TBXMLElement * titleElement = [TBXML childElementNamed:@"title" parentElement:channelElement];
    TBXMLElement * publishDate = [TBXML childElementNamed:@"pubdate" parentElement:channelElement];



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



       NSString * descriptionText = [TBXML textForElement:descriptionElement];
       NSString * itemText = [TBXML textForElement:itemElement];
       NSString * titleText = [TBXML textForElement:titleElement];
       NSString * publishText = [TBXML textForElement:publishDate];

       NSArray * array = [[NSArray alloc] initWithObjects:descriptionText,itemText,titleText,publishText,nil];

       [elementDictionary setObject:array forKey:descriptionText];

    NSLog(@"description: %@", descriptionText);
    NSLog(@"item text: %@", itemText);
    NSLog(@"title text: %@", titleText);
    NSLog(@"publish text: %@", publishText);









}

1 个答案:

答案 0 :(得分:0)

如果您的NSLog都没有工作,请检查并查看您是否调用了它们所在的方法。