iphone - 我如何在 ios 中使用 NSXMLParser 解析这个 xml?

标签 iphone ios nsxmlparser

<root>
    <table name="radios">
        <column name="nameradio">Radio1</column>
        <column name="logo">http://app.syndicationradio.fr/demo/logo1.png</column>
        <column name="stream">http://cloud2.syndicationradio.fr:8020</column>
        <column name="twitter">http://www.twitter.com/#syndicationradio</column>
        <column name="facebook">http://www.facebook.com/syndicationradio</column>
        <column name="titre">http://app.syndicationradio.fr/demo/title.xml</column>
    </table>
    <table name="radios">
        <column name="nameradio">Radio2</column>
        <column name="logo">http://app.syndicationradio.fr/demo/logo1.png</column>
        <column name="stream">http://cloud2.syndicationradio.fr:8020</column>
        <column name="twitter">http://www.twitter.com/#syndicationradio</column>
        <column name="facebook">http://www.facebook.com/syndicationradio</column>
        <column name="titre">http://app.syndicationradio.fr/demo/title.xml</column>
    </table>
</root>

现在请有没有人帮忙找出来,我如何使用 NSXMLParser 或任何其他 xml 解析器从 xml 数据中获取这些 url,假设在 IOS 中使用 TBXML

编辑:你也可以给我这个 xml 的 libxml 解析器的例子。

提前致谢。

最佳答案

试试这个:

- (void)viewDidLoad {
    [super viewDidLoad];

    NSURL *url = [[NSURL alloc] initWithString:@"yourURL"];
    NSXMLParser *parser = [[NSXMLParser alloc] initWithContentsOfURL:url];
    [parser setDelegate:self];
    BOOL result = [parser parse];
    // Do whatever with the result
}
               
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qualifiedName attributes:(NSDictionary *)attributeDict {
    NSLog(@"Did start element");
    if ([elementName isEqualToString:@"root"]) {
        NSLog(@"found rootElement");
        return;
    }
}
        
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName {
    NSLog(@"Did end element");
    if ([elementName isEqualToString:@"root"]) {
        NSLog(@"rootelement end");
    }           
}

- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string {
    NSString *tagName = @"column";
    if ([tagName isEqualToString:@"column"]) {
        NSLog(@"Value %@",string);
    }
}

关于iphone - 我如何在 ios 中使用 NSXMLParser 解析这个 xml?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15172669/

相关文章:

iphone - 微笑的瀑布

ios - UIApplication 将在后台运行多长时间

iphone - iOS:viewDidLoad 中的 View 高度设置不正确

ios - NSXMLParser didStartElement 仅具有特定属性

iphone - XML Parse 不显示内部带有 & 符号的元素

iphone - 在按下按钮时更改 View Controller

ios - Phonegap 中的时间格式

ios - Firebase 身份验证 :Newly created user can't be saved in Firebase

objective-c - 为什么我的 NSObject 不能作为 NSXMLParserDelegate 工作?

iphone - 引用计数的对象在释放后使用