首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WhatsApp导出:是否有unicode压缩约定?

WhatsApp导出:是否有unicode压缩约定?
EN

Stack Overflow用户
提问于 2016-03-25 12:24:14
回答 1查看 4.8K关注 0票数 1

我刚从Windows迁移到Android,我发现我无法迁移我的WhatsApp聊天历史(至少不容易)。现在,我想使用导出到邮件功能的WhatsApp提供。它运行得很好,但是(主要)对于旧消息,一些表情符号没有被正确地传递。

查看UTF-8字节表示,似乎这些没有显示的表情符号只由三个字节组成,而不是四个普通字节。

示例:

代码语言:javascript
复制
08.09.2013 20:00:10: Name: 

被导出,而不是

代码语言:javascript
复制
08.09.2013 20:00:10: Name: 

查看表情符号的十六进制表示(仅):

代码语言:javascript
复制
0  1  2  3  4  5  6  7  8  ... Dump
ee 81 9a ee 84 8c ee 84 9c     î.šî„Œî„œ

而不是

代码语言:javascript
复制
0  1  2  3  4  5  6  7  8  9  a  b  ... Dump
f0 9f 92 a9 f0 9f 91 bd f0 9f 92 80     💩👽💀

因此,我的问题是:这只是在WhatsApp导出过程中发生的错误,还是某种形式的压缩以减少文件大小?如果是,是否有将“压缩”版本转换为正常版本的解码算法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-25 12:42:54

WhatsApp似乎正在使用Unicode专用区域中的表情符号的软银编码,这是在iOS版本2-4之前在他们自己的Unicode块中标准化之前使用的。例如:

  • 0xEE 0x84 0x8CU+E10C的UTF-8编码。
  • U+E10C是软银/苹果公司用来对后来标准化的U+1F47D ()进行编码的专用字符。

没有这些映射的正式列表,算法转换也是不可能的(必须构建映射表)。但是,您可以很容易地找到Softbank/Unicode映射的编译来在它们之间构建一个转换器。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36219878

复制
相关文章

相似问题

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