一般数据库的编码是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;
}
}

最新文章

  1. 前端HTML规范
  2. apt-get整理(草稿)
  3. InputStreamReader和OutputStreamWriter
  4. DNS原理及其解析过程(转)
  5. Turn the pokers
  6. html-----001
  7. smarty半小时快速上手教程(转)
  8. 执行引擎子系统——JVM之五
  9. LeetCode Day4——Factorial Trailing Zeroes
  10. python列表和QVariant
  11. HDU 4790 Just Random 数学
  12. 导出excel记录
  13. SpringBoot简单入门
  14. JDBC复习2
  15. you can't add a reference to Newtonsoft.Json.dll as it was not built against the silverlight runtime
  16. es6 2017
  17. vs2017如何设置类或函数前不显示引用的数量
  18. linux ~/ 和 /
  19. ASP.NET学习笔记(2)——用户增删改查
  20. dbus通信与接口介绍

热门文章

  1. Step by Step 真正从零开始,TensorFlow详细安装入门图文教程!帮你完成那个最难的从0到1
  2. Apollo单向SSL认证(2)
  3. LDAP的用户需求
  4. python入门(8)数据类型和变量
  5. Apache设置用户权限(2个域名。一个能访问全部文件,一个只能访问指定文件)
  6. 三层架构和MVC一样吗?(区别)
  7. 【转载】Ubuntu 12.04 LTS 中文输入法的安装
  8. 开源协议瞎扯淡,什么是 MIT 协议?[转]
  9. 简述ConCurrentHashMap
  10. 自定义Loader