【问题标题】:Use NSXMLParser delegate to parse two files使用 NSXMLParser 委托解析两个文件
【发布时间】:2012-01-06 09:19:40
【问题描述】:

我需要在同一个视图控制器中解析两个完全不同的 XML 数据文件,所以我想知道是否可以更改 NSXMLPaser 委托方法的名称,仅举一个例子。

【问题讨论】:

    标签: objective-c cocoa nsxmlparser


    【解决方案1】:

    不,你不能。而且没有必要这样做。
    通过检查委托方法的第一个参数来区分解析器。
    例如:

    -(void)parserDidEndDocument:(NSXMLParser *)parser;
    

    相关的解析器总是作为第一个参数传递。

    另一种解决方案是为两个解析器分配不同的委托,这样您就始终知道关注的是哪个解析器。

    【讨论】:

    • 我应该检查参数的哪个属性来区分它们?
    • 属性?抱歉,不要理解,但是如果您将两个解析器作为视图控制器的 ivars,一个简单的 parser == myFirstParser 会告诉您所讨论的解析器是否为 myFirstParser
    猜你喜欢
    • 2011-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-27
    • 1970-01-01
    • 2012-01-07
    相关资源
    最近更新 更多