NSXMLParser粉碎变音符号(ä,ö,ü)

时间:2009-06-30 06:48:01

标签: iphone xml cocoa-touch nsxmlparser

我使用NSXMLParser来解析服务器的XML文档。它们编码为UTF8。 我的问题是,NSXMLParser在变音符号(ä,ö,ü)中断并启动一个新元素。

例如:

Lösen - NSXMLParser ---> L +ösen

如何让NSXMLParser像其他任何单词一样完整地阅读我的变音单词。

此致

3 个答案:

答案 0 :(得分:8)

很抱歉,根据您对原始问题的评论(foundCharacters在两次调用中接收文本),解析器的表现非常好。请参阅解析器的“讨论”部分:foundCharacters:下面引用的方法:

  

解析器对象可以向委托发送几个解析器:foundCharacters:消息来报告元素的字符。因为字符串可能只是当前元素的总字符内容的一部分,所以应该将其附加到当前字符的累积中,直到元素发生变化。

正如您所看到的,解析器可以自由地将您的委托传递给它认为合适的多个块。

答案 1 :(得分:3)

foundCharacters:不是由标记分隔的,您需要连接下一次调用didEndElement时传递的字符。

答案 2 :(得分:1)

我在这一行中遇到了西班牙语字符的问题:

  • (void)parser:(NSXMLParser *)解析器foundCharacters:(NSString *)string

我确定如果你发现的字符部分与didEndElement函数配合得很好,你会没事的。