2013-03-14 51 views
0

我有一个包含一些非英文字符的xml文件。例如:iOS NSXMLParser无法读取非英文字符?

<item>Rīga</item> 

当我分析它的NSXMLParser,我得到的第一个“foundCharacters”,所以我不明白的空白和换行。但是当有非英文字符时,它只返回第一个字母“R”作为结果。

任何想法我做错了什么?

+0

我敢打赌,你没有使用正确的字符编码。 – trojanfoe 2013-03-14 11:16:15

+0

同意@trojanfoe,确保您在XML中使用Unicode。 – 2013-03-14 11:17:35

+0

用CDATA标记换行非英文字符。 – Jeepston 2013-03-14 12:08:14

回答

0

您可以使用下面的代码:

-(void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string{ 

NSString *correctString = [NSString stringWithCString:[string cStringUsingEncoding:NSISOLatin1StringEncoding] encoding:NSUTF8StringEncoding]; 


} 

希望这会帮助你。

所有最好的!

0

使用以下方法

  • (无效)解析器:(的NSXMLParser *)解析器foundCharacters:(的NSString *)串 { 的NSString * strValue的= [NSString的stringWithCString:[字符串cStringUsingEncoding:NSISOLatin1StringEncoding]编码: NSUTF8StringEncoding]; [currentElement appendString:strValue]; strValue = nil; }