これに関連する他の質問があるようですが、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 ドキュメントは、Google Earth の KML ファイルとして保存されます。Google Earth で「& lt;」が検出されると、エラーが表示されます。トークン。NSXML で '<' だけを出力する方法はありますか? OSX 10.6 と XCode 3.2 を使用しています。