NSXMLParser RSS提供奇怪的字符问题

时间:2010-11-29 03:21:55

标签: iphone xml

您好我正在尝试使用NSXMLParser遍历XML文档,并且在描述标记方面遇到问题。

某些新闻网站在标签中有奇怪的字符(HTML标签,<,>,等等),因此解析不符合预期。任何人都可以提供一些帮助吗?

感谢

2 个答案:

答案 0 :(得分:0)

您需要将实体引用转换为它们所代表的字符。任何HTML标签都需要被剥离,或者被送入UIWebView。

答案 1 :(得分:0)

要跳过html标签,您需要这样做:

- (NSString *)flattenHTML:(NSString *)html {

    NSScanner *theScanner;
    NSString *text = nil;
    theScanner = [NSScanner scannerWithString:html];

    while ([theScanner isAtEnd] == NO) {

        [theScanner scanUpToString:@"<" intoString:NULL] ; 

        [theScanner scanUpToString:@">" intoString:&text] ;

        html = [html stringByReplacingOccurrencesOfString:[NSString stringWithFormat:@"%@>", text] withString:@""];
    }
    //
    html = [html stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];

    return html;
}

然后你可以通过字符串操作简单地替换其他不需要的字符。

希望这有帮助。

谢谢,

Madhup