java过滤emoji表情

star2017 1年前 ⋅ 2199 阅读

一般做评论的时候,可能需要支持表情。因为是后来的需求,一开始设计数据库的时候,使用的字符集是utf8,只支持3字节的,emoji表情是4字节,mysql数据库直接报错了。

如果你需要数据库可以保存表情,那么需要把字符集修改为utf8mb4,因为utf8mb4是向下兼容utf8的,所有不会有太大的问题,但是我们当时做完调整之后,发现有乱码的情况。

后来google了下,发现有个开源项目,可以把emoji转换为别名,在表里存的是别名,如,?,然后显示的时候,在给他转换下。这个方法可以不修改数据库字符集,又可以使用表情,但是只支持emoji表情。

我这边使用了两个方法
EmojiParser.parseToAliases 转换为别名
EmojiParser.parseToUnicode 别名转换为表情

其他方法可以看项目介绍
emoji-java
非常感谢作者,帮忙解决了一个大问题。

本文为博主原创文章,未经博主允许不得转载。
更多内容请访问:IT源点

相关文章推荐

全部评论: 0

    我有话说: