java处理数据库不支持的emoji表情符
2018-04-25 10:38
309 查看
一般数据库的编码是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; } }
相关文章推荐
- ubuntu (16.04) server 英文原版 添加中文语言支持 消除java 程序、mysql 数据库不能处理中文的错误
- [Java] JDBC 08 处理可更新的结果集 (sun提供了这样的接口,但是不见得所有的数据库厂商都支持)
- [Java] JDBC 08 处理可更新的结果集 (sun提供了这样的接口,但是不见得所有的数据库厂商都支持)
- Java中数据库事务处理的实现
- 在Java程序中处理数据库超时与死锁
- 好记性不如烂笔头25-JAVA处理数据库事务(3) - 事务回滚点
- java数据库日期处理用法
- JAVA 处理时间 - java.sql.Date、java.util.Date与数据库中的Date字段的转换方法
- java里对数据库中NULL的处理
- java 处理数据库clob类型的字段
- Java类对数据库结果集的处理(源码)
- JAVA--数据库事务处理(总结别人的)
- java图片压缩处理 支持gif
- java处理数据库date类型数据
- Java处理JSON的工具类(List、Map和JSON之间的转换)——依赖jsonlib支持Map嵌套
- 如何使用Google APIs和Google应用系统集成(7)----在里面JSON兑换XML数据处理,JSON数据包括违规XML数据规范:XML节点名称不支持号码Java解
- Java数据库——事务处理
- java中的数据库事务处理
- 数据库连接时一个异常的处理:java.sql.SQLException: No suitable driver found for
- Java 通用数据库连接类[支持存储过程 参数自动识别]