Url编码与希腊字符

时间:2011-10-07 09:07:50

标签: objective-c url encoding utf-8 internationalization

我将页面的html源代码发送到像这样的NSString

NSString* url = @"example url";
NSURL *urlRequest = [NSURL URLWithString:url];
NSError *err = nil;
NSString *response = [NSString stringWithContentsOfURL:urlRequest encoding:kCFStringEncodingUTF8 error:&err];

响应的一部分如:2 \u00cf\u0083\u00cf\u0087\u00cf\u008c\u00ce\u00bb\u00ce\u00b9\u00ce\u00b1                

如何在NSString响应中显示希腊字符?

页面的编码是“charset = iso-8859-7”

1 个答案:

答案 0 :(得分:2)

啊,我现在明白你的问题了。

Apple提供的NSString本机实现不知道如何处理iso-8859-7编码。

您有两种选择。

1)

尝试向[NSString stringWithContentsOfURL:encoding:error:]请求不同的编码,以查看是否成功加载。我的第一次尝试是使用NSISOLatin1StringEncoding。

2)

我找到了第三方库(和NSString类别扩展名) 进行iso-8859-7转换。但要访问CkoCharset将花费您(或您的客户)290美元。节省时间和时间可能是值得的投资。麻烦。

https://chilkatsoft.com/charset-objc.asp

和文档在这里:

http://www.chilkatsoft.com/refdoc/objcCkoCharsetRef.html