-
在发布文章的时候插入表情报错:Incorrect string value: '\xF0\x9F\x98\x97\xF0\x9F...'的问题,多数都是字符集的,以前从latain改成gbk,从gbk改成utf8,而我的CONTENT字段已经utf8了,那么比utf8更多的就只有utf8mb4了,所以去修改表字段的字符集,但是这样很麻烦,有很多人不知道改哪里,而且后台代码连接数据库的配置文件也得改,网上说是吧连接中的UTF-8删除掉这样表情就可以插入数据库了,PS:有一个小问题,对数据库的操作会乱码!
其实我们可以将这一列的内容进行转码在插入数据库,执行encode方法,在取数据的时候用decode方法,这样就可以避免报错
代码:
/*插入数据进行转码*/
String name=URLEncoder.encode(coment.toString(), "UTF-8");
circle.setComent(name);
/*取数据:进行解码!*/
String decode = URLDecoder.decode(XinXi.getComent(), "UTF-8");
XinXi.setComent(decode);