首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于IOS的EMoji Unicode

用于IOS的EMoji Unicode
EN

Stack Overflow用户
提问于 2013-10-17 11:09:17
回答 2查看 926关注 0票数 0

我调用api并获取字符串,其中包含NSDictionary中的android java unicode:

\ud83d\ude25\ud83d\ude1e\U2764\ud83d\ude2d

当获得上面的值并将其分配给字符串时,我将获得如下形式的字符串:\ud83d\ude25\ud83d\ude1e❤\ud83d\ude2d

我完全无法获得值\U2764,但获得了值❤,因此我无法将代码\U2764替换为IOS unicode。

我怎样才能得到它\U2764?我将其转换为UTF-8。

谢谢

编辑:

这是从api获取目录(dic):

{

代码语言:javascript
复制
message = "\ud83d\ude25\ud83d\ude1e\U2764\ud83d\ude2d";
mesgid = "213133";
Thumbnail = "";

}

然后我收到消息,但是dic2字符串仍然是get \ud83d\ude25\ud83d\ude1e❤\ud83d\ude2d:

代码语言:javascript
复制
const char *cString = [[dic6 objectForKey:@"Message"] UTF8String];

NSString *dic2 = [[NSString alloc] initWithUTF8String:cString];


if ([dic2 rangeOfString:@"\\U"].location==NSNotFound && [dic2 rangeOfString:@"\\u"].location==NSNotFound)
{
    NSLog(@"Substring Not Found");
}
else
{
    NSLog(@"Substring Found");
}

我完全不能得到unicode。为什么?

EN

回答 2

Stack Overflow用户

发布于 2013-10-17 11:12:58

尝尝这个

代码语言:javascript
复制
 NSString *uniString = [NSString stringWithUTF8String:@"\ud83d\ude25\ud83d\ude1e❤\ud83d\ude2d

"];

票数 0
EN

Stack Overflow用户

发布于 2013-10-17 11:32:40

希望这能解决你的问题

代码语言:javascript
复制
   char cString[] = "\ud83d\ude25\ud83d\ude1e\U2764\ud83d\ude2d";
   NSData *data = [NSData dataWithBytes:cString length:strlen(cString)];
   NSString *string = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19417577

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档