我正在尝试使用http请求使用iPhone调用网站;通过在Objective-C中开发一个小应用程序,但是我在传递阿拉伯字符方面遇到了问题!因为我需要使用十六进制的unicode,如(Arabic characters in Unicode?
在使用以下函数使用PHP开发网站之前,我已经这样做了:
/**
* Converts a string to USC-2 encoding if neccessary.
*/
function string_unicode($string)
{
if (function_exists('iconv'))
{
$latin = @iconv('UTF-8', 'ISO-8859-1', $string);
if (strcmp($latin, $string))
{
$arr = unpack('H*hex', @iconv('UTF-8', 'UCS-2BE', $string));
return strtoupper($arr['hex']) .'&unicode=1';
}
}
return FALSE;
}
但是我很难在Objective-C中实现同样的目标,请帮助!!感谢
答案 0 :(得分:3)
最后,通过使用格式化,这是一个非常简单的解决方案!!
-(NSString *)getUniCode:(NSString *)aString
{
NSString *theStringToReturn = nil;
NSMutableString *theEncodedString = [NSMutableString stringWithString:@""];
for (NSInteger theCharIndex=0; theCharIndex< [message length]; theCharIndex++) {
[theEncodedString appendFormat: @"%04x", [message characterAtIndex: theCharIndex]];
}
theStringToReturn = [NSString stringWithString:theEncodedString];
return theStringToReturn;
}
我希望这会对别人有所帮助。