对于使用utf8编码的mysql数据库来讲,若是字符串中存在emoji小图像,是不能存进数据库中的,查了一下,缘由大概是由于utf8编码能够存1-3个字节的字符,可是emoji是4个字节;解决方法能够把mysql的编码换成utf8mb4,须要相应版本的mysql;另一种方法是把字符串中全部的emoji给去除掉,而后在存进数据库,具体的方法是:html
public static String filterEmoji(String source,String slipStr) { if(isNotBlank(source)){ return source.replaceAll("[\\ud800\\udc00-\\udbff\\udfff\\ud800-\\udfff]", slipStr); }else{ return source; } }
参考连接:http://www.cnblogs.com/jeyson/p/5639791.htmlmysql
各类emoji编码sql