`

java处理emoji表情的方法

阅读更多
最近项目中遇到emoji表情存储的问题,后来就在网上搜了很多,
总结出两种方法进行处理:
1.通过正则匹配进行过滤,代码如下:
 //emoji表情过滤
	    public static String filterEmoji(String source) { 
	         if(source != null){
	             Pattern emoji = Pattern.compile("[\ud83c\udc00-\ud83c\udfff]|[\ud83d\udc00-\ud83d\udfff]|[\u2600-\u27ff]",Pattern.UNICODE_CASE | Pattern.CASE_INSENSITIVE);
	             Matcher emojiMatcher = emoji.matcher(source);
	             if (emojiMatcher.find()){
	                 source = emojiMatcher.replaceAll("");
	                 return source;
	             }
	         return source;
	        }
	        return source; 
	     }
2.通过修改数据库编码进行存储,最好在创建数据库的时候就采用该编码:
好多都说把mysql数据库字符集编码改成utf8mb4_unicode_ci,改完之后存储的emoji表情是4个问号,后来接着上网查,发现了通过引入emoji-java的jar方式来处理emoji表情,下面是两段转换代码: //把含有emoji表情的字符串中的emoji表情转成相应的alias String result = EmojiParser.parseToAliases(name); //把取得的别名转成对应的emoji表情 name = EmojiParser.parseToUnicode(name); 具体参考:https://github.com/vdurmont/emoji-java 上面的方法虽然可以用,但是需要比对jar包中的表情库,所系速度上相对来说较慢,后来我又继续研究上面 通过修改数据库编码的方式来解决,最后通过配置my.ini文件,把数据库编码格式修改成以下格式后就可以了, 原来出现乱码是因为我的character_set_server格式是latin1,改成utf8mb4后就可以了,可以看下成功的截图:
 表字段:
 表引擎:
 数据库:
数据:
 不用管数据库中存的是乱码,取出来的环境支持emoji时就会显示出来。

 

 

  • 大小: 11.2 KB
  • 大小: 21.4 KB
  • 大小: 22.9 KB
  • 大小: 23.4 KB
  • 大小: 4.3 KB
  • 大小: 42.9 KB
分享到:
评论

相关推荐

    java处理emoji表情工具类

    java处理emoji表情工具类,可完美处理emoji表情。

    java解析emoji表情存入oracle,并正常使用

    总的来说,处理emoji表情与Oracle数据库的交互是一项技术挑战,需要结合Java的字符串处理能力和第三方库。通过解析和转换emoji,我们可以克服Oracle数据库的限制,使表情在移动端得以正常显示。在实际项目中,务必...

    Java Emoji Converter表情转换工具

    在Java编程语言中,处理Emoji可能会涉及到Unicode编码、字体映射以及平台特定的实现。Java Emoji Converter提供了一个统一的接口,允许开发者将一个格式的Emoji字符串转化为另一种格式,确保在各种环境中都能正确...

    emoji-java-Java处理Emoji的类库

    在Java开发过程中,处理Unicode表情符号(Emoji)可能是一项挑战,因为并非所有Java API都...无论是简单的检测、格式转换还是复杂的解析操作,这个库都能提供便利的支持,大大简化了在Java应用程序中处理Emoji的工作。

    表情包emoji-java-4.0.0.jar

    Java 内容输入表情存储jar 表情包emoji-java-4.0.0.jar。我的博客有关于的表情包工具类文章。可配套使用https://blog.csdn.net/haopingping_88/article/details/81740311

    emoji 表情符号jar包

    Java处理emoji 表情符号依赖的jar包, Java处理emoji 表情符号依赖的jar包,

    java emoji表情存储的解决方法

    Java emoji表情存储解决方法 Java 中 emoji 表情存储的解决方法是指在 Java 应用程序中处理和存储 emoji 表情数据的方法。随着社交媒体和即时通信应用程序的普及,emoji 表情变得越来越流行,然而在 Java 应用程序...

    java emoji处理工程例子

    本项目提供了一个关于如何在Java中有效地处理emoji的实例,这对于现代应用程序,尤其是社交媒体、聊天应用或者任何需要用户输入表情的场景,是非常重要的。 首先,我们要理解的是,emoji实际上是Unicode字符,它们...

    java ipone 微信昵称emoji表情保存失败 问题解决

    在IT行业中,尤其是在移动...总的来说,处理emoji表情存储问题的关键在于理解字符编码原理,特别是Unicode和MySQL字符集之间的关系。在开发过程中,应尽可能地考虑到各种设备和平台的差异,以提供更稳定和兼容的服务。

    android 输入框EditText禁止输入Emoji表情符

    另一种方法是借助第三方库,比如“com.vanniktech:emoji:0.6.0”库,它可以方便地处理Emoji,包括检测和过滤。通过引入这个库,你可以创建一个EmojiFilter,然后将其应用到EditText的Filters中。 总的来说,禁止...

    emoji-java-master

    在IT行业中,尤其是在Java开发领域,处理Unicode字符集中的特殊字符,如Emoji表情符号,是一项常见但有时也具有挑战性的任务。"emoji-java-master"项目就是针对这个问题提供的一种解决方案,它是一个专门用于处理和...

    android简单的实现emoji表情功能

    在Android应用开发中,添加emoji表情功能已经...这个过程中,关键在于正确设置字体类型以支持emoji显示,并确保在不同环境中都能正确处理emoji字符。通过这样的实现,用户就可以方便地发送和接收emoji,增强交互体验。

    MySQL保存emoji表情

    因此,在设计与无线互联网相关的MySQL数据库时,推荐采用UTF-8mb4字符集来确保能够妥善处理emoji表情符号,避免出现数据存储或显示上的问题。 #### 限制 使用UTF-8mb4字符集的前提条件包括: - MySQL服务器版本需...

    android Emoji表情,通过自定义textview能够实现表情包在输入框中展示

    总结起来,实现Android应用中的Emoji表情展示涉及自定义TextView、处理Unicode表情代码点、创建表情面板以及适当地管理和绘制表情资源。通过这种方式,我们能够在输入框中无缝地集成和展示丰富的Emoji表情,提升用户...

    Emoji表情处理java

    由于数据库不支持Emoji表情,有些朋友可能说改数据库编码格式,风险较大,这个工具类不需要修改数据库编码格式,简单易用

    emoji表情存储转译工具类

    emoji表情存储转译工具类 由于数据库不支持Emoji表情,为了避免改数据库编码格式代理来的风险。Java处理emoji 表情符号依赖的jar包 示例地址:https://pxy.iteye.com/blog/2435738

    用Fragment实现的Emoji表情碎片,可以重用到项目中

    "library"可能包含的是实际的库源代码,比如Java或Kotlin类,这些类可能包含了Fragment的实现,以及处理Emoji的相关逻辑。开发者可以将这个库作为一个依赖添加到自己的项目中,以便在需要的地方使用这个表情Fragment...

    聊天emoji表情显示emoji.rar

    对于编程语言如JavaScript,可以使用内置的字符串方法(如JavaScript的`String.prototype.codePointAt()`)来处理emoji的编码。在处理用户输入时,需要注意正确处理包含emoji的字符串,避免出现乱码或解析错误。 在...

    And安卓Emoji表情TextView以

    综上所述,`And安卓Emoji表情TextView`涉及到了Unicode编码、字体设置、第三方库的使用、字符串处理以及性能优化等多个方面。开发者在实现这一功能时,需要充分理解这些知识点,并根据项目需求进行合理选择和优化。

    java web处理 emoji demo

    在Java Web开发中,处理Unicode编码的Emoji表情符号是一个常见的挑战。由于Emoji是Unicode字符集的一部分,它们在不同的操作系统和浏览器中可能有不同的表示方式,这可能导致在存储、传输或者显示时出现问题。本示例...

Global site tag (gtag.js) - Google Analytics