关于ios:iOS字符串NSString转换为emoji表情的方式

2次阅读

共计 575 个字符,预计需要花费 2 分钟才能阅读完成。

emoji 的表情存成 uint32 的模式,如 0x1f60d、0x1f603 等,能够通过零碎办法转换为 emoji 的表情,emoji 表情能够间接复制到其余中央关上。失常存储往往以字符串的模式保留。以下为 Swift 及 oc 版本的字符串转 emoji 表情的形式。

Swift

代码:

let code = "0x1f603"
// 创立扫描器
let scanner = Scanner(string: code)
var result: UInt32 = 0
// 利用扫描器扫出后果
scanner.scanHexInt32(&result)
// 将后果转换成字符
let c = Character(UnicodeScalar(result)!)
// 将字符转换成字符串
let emojiCode = String(c)

oc

代码:

NSString *emojiString = @"0x1f60d";

NSScanner *scanner = [NSScanner scannerWithString:emojiString];
uint32_t intCode = 0;
[scanner scanHexInt:&intCode];
NSString * result = [[NSString alloc] initWithBytes:&intCode length:4 encoding:NSUTF32LittleEndianStringEncoding];
正文完
 0