【iOS】字符串NSString转换为emoji表情的方式

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];

步步

211 声望
3 粉丝
0 条评论
推荐阅读
「持续兼容」微信H5选择照片(图片&视频)及拍照&录像
做过H5调用手机相册或者拍照的同学可能深有体会,在不同型号手机和不同的浏览器上表现各有差异,实属头疼。由于手机自带浏览器或者第三方浏览器实在太多,结合最近正在做的项目用户群体P90在微信上,文本单从兼容...

wuwhs6阅读 2.4k

封面图
网易云音乐开源全链路埋点方案-曙光埋点(dawn)
网易云音乐开源了曙光埋点 dawn,一个跨多端的全链路埋点解决方案,旨在构造一个完美的数据理想国。曙光埋点创造性的提出了埋点虚拟树(VTree),并在此基础上实现了诸多能力,解决大前端侧埋点困难、精度差、不...

云音乐技术团队3阅读 2.4k

封面图
深度剖析 Runtime
做很多需求或者是技术细节验证的时候会用到 Runtime 技术,用了挺久的了,本文就写一些场景和源码分析相关的文章。先问几个小问题:class_rw_t的结构是数组,数组里面的元素是数组,那它是二维数组吗?为什么16字...

杭城小刘4阅读 983

封面图
万字长文详解如何使用Swift提高代码质量 | 京东云技术团队
京喜APP最早在2019年引入了Swift,使用Swift完成了第一个订单模块的开发。之后一年多我们持续在团队/公司内部推广和普及Swift,目前Swift已经支撑了70%+以上的业务。通过使用Swift提高了团队内同学的开发效率,同...

京东云开发者1阅读 880

封面图
Mac下编译WebRTC(Mac和iOS版本)
随着新冠疫情的影响,这两年音视频的需求呈爆发式增长。在音视频领域中,WebRTC可以说是一个绕不开宝库,包括了音视频采集、编解码、传输、渲染的全过程。本文主要记录下在Mac平台上编译WebRTC Mac和iOS版本的全...

吴尼玛阅读 3.8k

Flutter 下载篇 - 叁 | 网络库切换实践与思考
本文是关于使用flutter_download_manager下载功能的实践和探索。我们将基于flutter_download_manager的功能扩展,改造成自己想要的样子。在阅读本文之前,建议先了解前两篇文章:

听蝉阅读 2.6k

抢鲜解读:Flutter 3.7更新啦
新年伊始,由 Flutter 3.7 正式版来「打头阵」!我们与整个 Flutter 社区们继续在 Flutter 3.7 中优化了框架,包括创建自定义菜单栏和层叠式菜单、更好的国际化工具支持、新的调试工具以及其他功能和特性等。

慕课网阅读 2.5k

封面图

步步

211 声望
3 粉丝
宣传栏