保存emoji图标

  • 发生此问题的前提条件:
            数据库字符集为utf8,并不是utf8mb4的。
    emoji图标插入utf8字符集的数据库时就会出现下面的错误
    在这里插入图片描述

utf8占用3字节,而emoji占用4字节,所以会报错。

解决方案:
一、将数据库的字符集改为utf8mb4;
二、将emoji转义后存储:

<dependency>
  <groupId>com.vdurmont</groupId>
  <artifactId>emoji-java</artifactId>
  <version>4.0.0</version>
</dependency>

简单使用方法如下:

String str = "An :grinning:awesome :smiley:string &#128516;with a few :wink:emojis!";
String result = EmojiParser.parseToUnicode(str);
System.out.println(result);
// Prints:
// "An 😀awesome 😃string 😄with a few 😉emojis!"
String str = "An 😀awesome 😃string with a few 😉emojis!";
String result = EmojiParser.parseToAliases(str);
System.out.println(result);
// Prints:
// "An :grinning:awesome :smiley:string with a few :wink:emojis!"

详细使用参见emoji-java作者github的文档emoji-java

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章