如何使用NSXMLParser解析包含&符号的字符串?
问题描述:
输入字符串是如何使用NSXMLParser解析包含&符号的字符串?
<path>a & b</path>
,我的目标C解析器代码是
- (void) parser:(NSXMLParser *)parser
foundCharacters:(NSString *)string {
...
if(parserState==EXPECT_PATH) {
NSLog(@"got %@", string);
}
...
}
这将打印got a
而不是got a & b
答
parser:foundCharacters:
可以为一个元素的内容被多次调用。您有责任将方法的多次运行中的所有字符附加到一个字符串中。
因此,除非您确认parser:foundCharacters:
在第一次运行后没有再次被调用,否则这是预期的行为。
+1是的,我在第一次调用时重置了'parserState'。避免这个问题解决了。 –