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

如何将阿拉伯语(Unicode编码)转换为Objective-C中的字节十六进制表示?,objective-c,unicode,encoding,Objective C,Unicode,Encoding,我正在尝试使用http请求调用使用iPhone的网站;然而,通过在Objective-C中开发一个小应用程序,我在传递阿拉伯语字符时遇到了问题!因为我需要在十六进制中使用unicode(?) 在使用PHP开发网站之前,我已经使用以下函数完成了此操作: /** * Converts a string to USC-2 encoding if neccessary. */ function string_unicode($string) { if (function_exists('ic

我正在尝试使用http请求调用使用iPhone的网站;然而,通过在Objective-C中开发一个小应用程序,我在传递阿拉伯语字符时遇到了问题!因为我需要在十六进制中使用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;
}
-(NSString*)getUniCode:(NSString*)aString
{
NSString*theStringToReturn=nil;
NSMUTABLETRING*编码字符串=[NSMUTABLETRING STRING WITHSTRING:@”“];
对于(NSInteger theCharIndex=0;theCharIndex<[消息长度];theCharIndex++){
[TheEncodeString appendFormat:@“%04x”,[MessageCharacterAtIndex:theCharIndex];
}
字符串ToReturn=[NSString STRING WITHESTRING:TheEncodeSTRING];
将管柱返回原位;
}

我希望这会对其他人有所帮助。

您如何传递阿拉伯语字符?在URL中?在请求正文中?您有什么特别的问题?最重要的是,我需要将它们编码为unicode十六进制格式,如(0628表示ب)然后我需要使用添加转义百分比来转义它们,我的问题是如何做上面的php代码所做的事情,即如果文本是拉丁语,则确认文本,然后什么也不做,否则将阿拉伯文字符转换为十六进制格式?很多感谢还有其他标准化的方法通过HTTP发送Unicode,比如URL转义码或JSON编码,不是吗你使用它们吗?如果服务器需要,你甚至可以发送原始的Unicode编码文本。否则,你应该更改你的问题和标题,明确地说“如何将Unicode编码文本转换为字节十六进制表示”?我正在寻找与上述Objective-C中PHP代码等效的文本?有什么想法吗