我需要对NSXMLParser做什么才能处理实体字符?例如,如果我有以下元素
谢谢.
我把一个非常快速的原型应用程序拼凑在一起来测试它.你所描述的不是我所看到的行为:
<?xml version ="1.0"encoding ="UTF-8"?>
#import "XMLMeController.h" @implementation XMLMeController - (IBAction)parse:(id)sender { NSURL *url = [NSURL fileURLWithPath:@"/Users/robertwalker/Desktop/test.xml"]; NSXMLParser *parser = [[NSXMLParser alloc] initWithContentsOfURL:url]; [parser setDelegate:self]; [parser parse]; [parser release]; } - (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string { NSLog(@"Found: %@", string); } @end
2008-11-11 20:41:47.805 XMLMe [10941:10b]发现:左
2008-11-11 20:41:47.807 XMLMe [10941:10b]发现:&
2008-11-11 20:41:47.807 XMLMe [ 10941:10b]发现:对
正如您所看到的,解析器正在找到"Left",然后是"&",然后是"Right",作为发送给委托的三个单独事件.
我无法从你的帖子中说出来,但是你需要确保在XML文件"&"中使用了正确的实体.而不只是"&"字符,当然在XML文件中无效.