我正在开发一个支持4种不同语言的应用程序。其中一种语言是阿拉伯语。在整个应用程序中使用OpenSans字体
我得到了json的回应,
"card_description" = "\U00d9\U0160\U00d9\U2026\U00d9\U0192\U00d9\U2020\U00d9\U0192 \U00d8\U00b1\U00d9\U0192\U00d9\U02c6\U00d8\U00a8 \U00d8\U00a7\U00d9\U201e\U00d8\U00af\U00d8\U00b1\U00d8\U00a7\U00d8\U00ac\U00d8\U00a9 \U00d9\U02c6\U00d8\U00a7\U00d9\U201e\U00d8\U00aa\U00d9\U2020\U00d9\U201a\U00d9\U201e \U00d8\U00a8\U00d9\U2021\U00d8\U00a7 \U00d8\U00b9\U00d8\U00a8\U00d8\U00b1 \U00d8\U00a7\U00d9\U201e\U00d9\U0192\U00d8\U00ab\U00d9\U0160\U00d8\U00b1 \U00d9\U2026\U00d9\U2020
\n\U00d8\U00a7\U00d9\U201e\U00d9\U2026\U00d8\U00af\U00d9\U2020 \U00d9\U02c6\U00d8\U00a7\U00d9\U201e\U00d8\U00a8\U00d9\U201e\U00d8\U00af\U00d8\U00a7\U00d8\U00aa \U00d9\U0081\U00d9\U0160 \U00d8\U00a7\U00d9\U201e\U00d8\U00af\U00d8\U00a7\U00d9\U2020\U00d9\U2026\U00d8\U00a7\U00d8\U00b1\U00d9\U0192";
通过在UTF8String中转换它,我在模拟器中运行应用程序后得到以下结果。
在代码下方用于显示标签中的文字
[cell.btnDescription setTitle:[NSString stringWithUTF8String:[[[arrCards objectAtIndex:indexPath.row] valueForKey:wCARD_DESC] cStringUsingEncoding:NSUTF8StringEncoding]] forState:UIControlStateNormal];
我没有得到适当的阿拉伯语言结果。
任何人都可以帮助我吗?
提前致谢。
答案 0 :(得分:1)
我认为您不需要转换为UTFString。 只需使用以下代码即可用于其他语言:
[cell.btnDescription setTitle:[[arrCards objectAtIndex:indexPath.row] valueForKey:wCARD_DESC] forState:UIControlStateNormal];
不要担心JSON响应阿拉伯语文本只会在日志中显示。
答案 1 :(得分:1)
您无需执行以下代码来解密阿拉伯语内容。
[cell.btnDescription setTitle:[NSString stringWithUTF8String:[[[arrCards objectAtIndex:indexPath.row] valueForKey:wCARD_DESC] cStringUsingEncoding:NSUTF8StringEncoding]] forState:UIControlStateNormal];
整件事来自JSON,他们将为您解码/编码,我遇到了与我的阿拉伯应用程序相同的问题,而JSON开发人员所做的是他们添加了一个头函数,即