emoji表情符处理替换成空格

博客介绍了在Java中处理emoji表情符的方法,通过`parseUtf8`方法过滤四个字节的utf - 8字符(emoji表情符),将其替换成空格。该方法会根据不同的UTF8编码字头进行判断和替换操作,最终返回处理后的字符串。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

emoji表情符处理替换成空格
/**

  • 用filterOffUtf8Mb4
  • Description: 过滤率四个字节的utf-8字符(emoji表情符),替换成四个空格。
  •     四字节utf-8字符mysql存储报错 
    
  • @Version1.0
  • @param s
  • @return
  • @throws UnsupportedEncodingException
  • @throws Exception
    */
    public static String parseUtf8(String s) throws UnsupportedEncodingException {
    byte[] b = s.getBytes(“utf-8”);
    for(int i=0, len=b.length; i<len; i++){
    if ((b[i] & 0xF8) == 0xF0) {//F8=1111 1000,F0=1111 0000过滤4位UTF8编码(字头11110xxx)
    b[i++] = 32;
    b[i++] = 32;
    b[i++] = 32;
    b[i++] = 32;
    }
    else if ((b[i] & 0xFC) == 0xF8) {//FC=1111 1100,F8=1111 1000过滤5位UTF8编码(字头111110xx)
    b[i++] = 32;
    b[i++] = 32;
    b[i++] = 32;
    b[i++] = 32;
    b[i++] = 32;
    }
    else if ((b[i] & 0xFE) == 0xFC) {//FE=1111 1110,FC=1111 1100,过滤6位UTF8编码(字头1111110x)
    b[i++] = 32;
    b[i++] = 32;
    b[i++] = 32;
    b[i++] = 32;
    b[i++] = 32;
    b[i++] = 32;
    }
    }
    return new String(b, “utf-8”);

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值