软件编程
位置:首页>> 软件编程>> java编程>> java处理数据库不支持的emoji表情符问题解决

java处理数据库不支持的emoji表情符问题解决

作者:冰湖一角  发布时间:2021-08-21 00:16:58 

标签:java,数据库,emoji,表情,符

一般数据库的编码是utf8,utf8是不支持存储表情符的,当存入的微信昵称带有表情符时就会出现乱码情况,有两种解决方法:

1.mysql数据库升级到5.5版本以上,utf8改为utf8mb4,utf8mb4的字符最多可以是4个字节,可以存储表情符,重启数据库服务器,这种方式有可能会失效;

2.在java代码里过滤掉表情符,简洁高效,下面是过滤掉表情符的工具类:


import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class EmojiUtil {
 public static String replace(String input) {
   if (!StringUtil.isEmpty(input)) {
     String patternStr = "[^\\u0000-\\uFFFF]";
     Pattern pattern = Pattern.compile(patternStr, Pattern.UNICODE_CASE | Pattern.CASE_INSENSITIVE);
     Matcher matcher = pattern.matcher(input);
     input = matcher.replaceAll("");
   }
   return input;
 }
}

来源:https://www.cnblogs.com/bingyimeiling/p/8940712.html

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com