2011-06-13 49 views
1

在我的应用程序,我下载rss文件与encoding =“windows-1255”。 我看过了,我需要将它转换为UTF8,然后传递给NSXMLParser将NSData转换为NSString与编码windows-1255

如果是真的,(任何有关意见将offcourse帮助..)

我也有这个代码示例,但我没有看到的常量为1255的编码。

NSString *myStr = [[NSString alloc]initWithData:myData encoding:NSWindowsCP1252StringEncoding]; 

我如何转换与1255,而不是1252

tnx

回答

0

似乎在SDK中没有这样的编码。但是,您可以自己编写编码 - 将unicode字符(例如http://en.wikipedia.org/wiki/Windows-1255)放入数组[0..255]中,并将所需的字符替换为NSData中的每个字节。

0

我建议你继续尝试直接解析文件。如果你没有真正遇到它,不要试图解决问题。

有很强的可能性,您的文件将被很好地解析,没有任何奇特的转换,特别是如果它是一个标准的RSS提要,无论版本。

1

这实际上是可能的。

​​

CFStringConvertIANACharSetNameToEncoding编码名称转换为CFStringEncoding值,CFStringConvertEncodingToNSStringEncoding转换CFStringEncodingNSStringEncoding您可以使用创建从NSDataNSString