2011-10-20 147 views
0

輸入字符串是如何使用NSXMLParser解析包含&符號的字符串?

<path>a &amp; b</path> 

,我的目標C解析器代碼是

- (void) parser:(NSXMLParser *)parser 
foundCharacters:(NSString *)string { 
    ... 
    if(parserState==EXPECT_PATH) { 
     NSLog(@"got %@", string); 
    } 
    ... 
} 

這將打印got a而不是got a &amp; b

回答

4

parser:foundCharacters:可以爲一個元素的內容被多次調用。您有責任將方法的多次運行中的所有字符附加到一個字符串中。

因此,除非您確認parser:foundCharacters:在第一次運行後沒有再次被調用,否則這是預期的行爲。

+0

+1是的,我在第一次調用時重置了'parserState'。避免這個問題解決了。 –

相關問題