2009-06-30 81 views
3

我使用NSXMLParser來解析服務器的XML文檔。它們被編碼爲UTF8。 我的問題是,NSXMLParser在變音符(ä,ö,ü)處中斷並啓動一個新元素。NSXMLParser碎片變音器(ä,ö,ü)

例如:

Lösen - 的NSXMLParser ---> L + OSEN

我如何獲得的NSXMLParser完全讀我的變音的話,其他每個字。

問候

+1

你的意思是變成<ösen>?或者解析器返回兩個文本節點,「L」和「ösen」? – 2009-06-30 20:05:06

回答

8

對不起,但根據您對原始問題的評論(foundCharacters在兩次調用中接收文本)解析器表現得非常好。請參閱解析器的「討論」部分:foundCharacters:方法引用如下:

解析器對象可能會發送委託幾個解析器:foundCharacters:messages來報告元素的字符。由於字符串可能只是當前元素的總字符內容的一部分,因此您應該將其附加到當前字符累積,直到元素更改。

正如您所見,解析器可以自由地將您的委託傳遞給它認爲合適的儘可能多的塊。

1

我碰到了在此行西班牙字符問題:

  • (無效)解析器:(的NSXMLParser *)解析器foundCharacters:(的NSString *)字符串

我敢肯定,如果您發現的字符部分與didEndElement函數配合良好,您會沒事的。

3

foundCharacters:不是通過標籤拖延,您需要concatenate傳遞的字符,直到下一次調用didEndElement

相關問題