java emoji表情 乱码_emoji表情乱码
这个东东叫:emoji
首先你System.out.println出来,确认一下在控制台能正常显示.证明从前台到后台是没有乱码的
确认JDBC版本,在网上查下,高于某个版本以后,才支持emoji将mysql表以及字段默认charset设置为utf8mb4,这个也是需要高版本MySql的支持.emoji unicode编码
如果你希望让你的网站或者App支持Emoji,那么在初次设置MySQL时,有一些细节你需要知道。
Emoji
Emoji字符的特殊之处是,在存储时,需要用到4个字节。而MySQL中常见的utf8字符集的utf8_general_ci 这个collate最大只支持3个字节。所以为了能够存储Emoji,你需要改用 utf8mb4 字符集。
在创建表时,用类似这样的语句:
CREATE
TABLE
`
tbl
`
(...)
ENGINE
=
InnoDB
DEFAULT
CHARSET
=
utf8mb4
COLLATE
utf8mb4_general_ci
;
http://www.v2ex.com/t/137724copy这里的
如果不想保留emoji,或者搞不定了不得不舍弃,可以用如下代码过滤:
importorg.apache.commons.lang3.StringUtils;publicclassEmojiFilterUtils{/***将emoji表情替换成***@paramsource*@return过滤后的字符串*/publicstaticStringfilterEmoji(Stringsource){if(StringUtils.isNotBlank(source)){returnsource.replaceAll("[\\ud800\\udc00-\\udbff\\udfff\\ud800-\\udfff]","*");}else{returnsource;}}publicstaticvoidmain(String[]arg){try{Stringtext="Thisisasmiley\uD83C\uDFA6face\uD860\uDD5D\uD860\uDE07\uD860\uDEE2\uD863\uDCCA\uD863\uDCCD\uD863\uDCD2\uD867\uDD98";System.out.println(text);System.out.println(text.length());System.out.println(text.replaceAll("[\\ud83c\\udc00-\\ud83c\\udfff]|[\\ud83d\\udc00-\\ud83d\\udfff]|[\\u2600-\\u27ff]","*"));System.out.println(filterEmoji(text));}catch(Exceptionex){ex.printStackTrace();}}}
java emoji表情 乱码_emoji表情乱码相关推荐
- 微信小程序获取带表情的微信名乱码问题
微信小程序获取带表情的微信名乱码问题 在后台获取完微信用户数据后,对微信名进行UTF-8编码 URLEncoder.encode(nickName, "utf-8") ,将编码后的 ...
- 推荐,Java Emoji Converter(Emoji表情转换工具)
当Emoji表情字符存储有问题,或者遇到保存字符串到数据库里出现\xF0\x9F\x92\x94类似问题时,请尝试使用这个工具. 什么工具呢? Java Emoji Converter . GitHu ...
- java emoji 编码_Java对Emoji表情编码与解码
Java对Emoji表情编码与解码,使用到Java Emoji Converter . GitHub地址:https://github.com/binarywang/java-emoji-conver ...
- 让应用程序支持emoji字符 廖雪峰 / 编程 / 2017-4-20 22:01 / 阅读: 5051 什么是emoji?就是这些表情和符号:
让应用程序支持emoji字符 廖雪峰 / 编程 / 2017-4-20 22:01 / 阅读: 5051 什么是emoji?就是这些表情和符号: ????????? 自iPhone从iOS 5在输入法 ...
- java web 中有效解决中文乱码问题-pageEncoding与charset区别, response和request的setCharacterEncoding 区别
java web 中有效解决中文乱码问题-pageEncoding与charset区别, response和request的setCharacterEncoding 区别 参考文章: (1)java ...
- Myeclipse中导入项目后java类中汉字注释出现乱码问题(已解决)
Myeclipse中导入项目后java类中汉字注释出现乱码问题(已解决) 参考文章: (1)Myeclipse中导入项目后java类中汉字注释出现乱码问题(已解决) (2)https://www.cn ...
- ubuntu下eclipse打开window下的java文件,注释内容为乱码,解决方法
2019独角兽企业重金招聘Python工程师标准>>> 今天打开了以前的工程,想看看以前写的代码,打开后发现以前的java源文件的注释变成了乱码,于是在google上开始了搜索,得到 ...
- Java Web项目中解决中文乱码方法总结
一.了解常识: 1.UTF-8国际编码,GBK中文编码.GBK包含GB2312,即如果通过GB2312编码后可以通过GBK解码,反之可能不成立; 2.web tomcat:默认是ISO8859-1,不 ...
- zipentry压缩乱码linux,java生成压缩文件 ZipEntry出现乱码的有关问题
java生成压缩文件 ZipEntry出现乱码的问题 在项目中,一次导出的文件有好几个,而且文件内容比较大,最后考虑到把文件进行压缩在下载,开始试用JDK自带的ZIP压缩包时,ZipEntry ze ...
最新文章
- Java 并发编程笔记(一)
- 华为开启管理员模式_又一年的心动模式开启,华为nova8系列8号色撩人肺腑
- vue方法传值到data_Vue组件创建和传值的方法
- Java学习笔记-12.传递和返回对象
- 【图像加密】基于matlab RSA图像加密解密【含Matlab源码 1442期】
- linux 安装 yum 命令源
- 达州2022年9大科技计划项目申报方向、周期、要求汇编大全
- 昵图网源码php,【PHP】仿我图,千图,昵图网素材下载,素材销售平台最新宽屏商业版:含新版vip会员中心,全开源...
- excel如何利用VBA一键更改所有文件的名称
- 阿里云数据库掌门人褚霸:骑行与数据人生
- EXCEL,锁定单元格后往下拉,但后面需要继续复制粘贴时又希望步锁定,该怎么办?小技巧,先把$ 替换为空后再粘贴
- 警告warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
- xshell 运行python脚本
- WUST-CTF2020(武汉科技大学第一届WUST-CTF网络安全竞赛)WP
- IOT语义互操作性之本体论
- mysql 查询重复字符串_如何在mysql中查询重复的字符串条目
- AngularJS中ngRouter和uiRouter的区别
- liunx启动时:initramfs unpacking failed:write error
- 法学行政法论文选题有哪些?
- 根据图片名字生成文件夹并归类+批量重命名照片名