如何转换十六进制值成表情符号图标,我有一个字符串像下面的iOS转换十六进制数值
NSString *myVal = @"1F61E";
我如何转换这个文本,以显示它的表情符号charrcaters?
我发现,价值from this link 请让我知道,我真的卡住了这个问题
Updated
NSString *utf8String1 = @"1F61E";
NSString *a = [self convert:utf8String1];
NSLog(@"%@ &&&&&&&&&&&&&&&&&&&&&",a);
-(NSString*)convert:(NSString*)decoded{
unichar unicodeValue = (unichar) strtol([decoded UTF8String], NULL, 16);
char buffer[2];
int len = 1;
if (unicodeValue > 127) {
buffer[0] = (unicodeValue >> 8) & (1 << 8) - 1;
buffer[1] = unicodeValue & (1 << 8) - 1;
len = 2;
} else {
buffer[0] = unicodeValue;
}
return [[NSString alloc] initWithBytes:buffer length:len encoding:NSUTF8StringEncoding];
}
检查所以这个答案,解释正是这一点: http://stackoverflow.com/questions/1775859/how-to-convert-a- unichar-value-to-nsstring-in-objective-c – 2012-03-27 11:27:22