我看到还有其他与此相关的问题,但没有使用 NSXML。
所以,我正在使用 NSXML 从头开始构建一个 XML 文档,当我创建一个带有字符串值的 NSXMLNode 时,该字符串中的所有“<”字符都被替换为“& lt;” 当我输出节点或将其保存到文件时。
例子:
NSXMLNode *description = [NSXMLNode elementWithName:@"description"
stringValue:@"<![CDATA[Some Description</a>]]>"];
然后当我这样做
NSLog(@"description: %@", description);
我得到所有“<”字符替换为“& lt;”的节点。但是,当我这样做时
NSLog(@"description string value: %@", [description stringValue]);
我得到正确的字符串输出。这个 XML 文档将被保存为谷歌地球的 KML 文件,当它找到“<”时,谷歌地球给了我一个错误 令牌。知道如何让 NSXML 只输出“<”吗?我正在使用 OSX 10.6 和 XCode 3.2 顺便说一句。