我们在Objective-C中使用NSXMLParser来解析我们的XML文档,这些文档都是UTF8编码的。一个文档中有一个字符串"Nestlé“(如在...<title>Nestlé Novelties</title>...
中)。解析器刚刚退出,报告错误code=9,因为单词"Nestle“的末尾有一个法语字母"e”。此外,我们尝试使用IE,Chrome,Safari来直接显示相同的文档。他们报告了一个类似的编码错误。
我们对所有传入的XML文档使用UTF-8,这意味着它们都有"<?xml version="1.0" encoding="UTF-8" ?>
“作为文档的顶部。
这是编码问题吗?如果是这样,我们该如何解决这个问题呢?我们应该对所有的XML文档使用什么编码?提前感谢!
巴克莱
发布于 2009-05-31 20:05:10
你有没有用十六进制编辑器检查过这个文件,以确认"é“确实是UTF-8,0xC3
0xA9
?
发布于 2009-05-31 20:08:31
在超文本标记语言中,我会使用Nestlé
,这对你的应用程序有效吗?
发布于 2009-06-01 16:18:46
我刚才在一个示例XML文件中看到,一个包含用户定义输入(碰巧包含é字符)的字符串将包含标记的内容包装在CDATA声明中。这会使解析器完全忽略其中包含的字符。
https://stackoverflow.com/questions/932666
复制相似问题