如何将阿拉伯语(Unicode编码)转换为Objective-C中的十六进制字节表示?



我正在尝试使用http请求使用iPhone呼叫网站;通过在Objective-C中开发一个小应用程序,但是我有问题通过阿拉伯字符!因为我需要在十六进制中使用unicode,例如(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,请帮助!!由于

最后,这是一个非常简单的解决方案,通过使用格式化!!

-(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;
}

最新更新