大家都知道,一个英文=1字节,一个汉字2字节,而一个emoji表情=4个字节,在有这三种混用的时候,比如app聊天界面,那么删除和截取便成了很头痛的事情。

问题描述

截取导致乱码,如下图:

解决方案

使用C#里面的Substring进行截取一个长度,截取完成之后判断截取的是否为乱码,如果是乱码,在进行二次截取处理,效果如图:

核心代码:

var result = txt.Substring(0, txt.Length - 1); //先执行删除
if (!string.IsNullOrEmpty(result))
{
byte[] bt = System.Text.Encoding.Unicode.GetBytes(txt.Substring(txt.Length - 1));
if (bt.Length == 2 && bt[0] == 253 && bt[1] == 255) //判断删除的最好一个“☐”,进行二次删除
    {
result = result.Substring(0, result.Length - 1);
}
}

Xamarin截取/删除emoji表情bug解决方案相关推荐

  1. uni-app聊天功能输入框删除emoji表情

    最近项目中碰到一个问题,就是聊天功能中,文字和emoji表情删除的时候emoji表情需要点击两次删除,如果只点击一次的话并不能删除掉,会显示乱码. 处理方式:正则 思路:获取到输入框内的字符串,使用s ...

  2. ios emjoi java_前端App开发,实际工作中三端(android,ios,前端H5)emoji表情显示解决方案...

    想起最近开发APP的时候,产品提的一个需求,用户的帖子正文还有评论内容里,要能够显示emoji表情,因为我们这款app是混合开发的,APP里的发贴,发评论是原生做的(android和ios),但帖子详 ...

  3. java 存储表情_java emoji表情存储解决方案

    1.问题产生情况 我遇到这个问题是做微信开发的时候有些有用的头像用了微信的emoji表情,然而我的mysql数据库用的编码是utf8_general_ci,就是utf-8编码,结果也就报错误了. 2. ...

  4. iOS中Emoji表情的判断

    问题 服务器端不支持Emoji表情,因此客户端在上传用户输入时,不能包含Emoji表情. 解决方案 在客户端发送请求前,判断用户输入中是否含有表情,如果含有表情,则提示用户重新输入.这个过程关键是如何 ...

  5. html怎么发送表情,前端怎么解决emoji表情无法发送的BUG

    之前在做移动端开发时候,有一个发表评论的功能需要实现,虽然这个功能 比较简单能做出来,但是我在测试的时候说手机自带的emoji表情发送失败的BUG总是出现,所以今天给大家带来出现这种BUG的解决方法 ...

  6. 【Mysql】存储emoji表情报错(Incorrect string value: ‘\xF0\x9F\x98\x82\xF0\x9F...‘)的解决方案

    [Mysql]存储emoji表情报错(Incorrect string value: '\xF0\x9F\x98\x82\xF0\x9F...')的解决方案 参考文章: (1)[Mysql]存储emo ...

  7. MySQL插入emoji表情错误的2种解决方案,Incorrect string value: '\xF0\x9F\x98\x84'

    确实在开发过程中遇到过类似的问题 原因:mysql的UTF-8只支持三个字节的存储,而一般字符是三个字节,但是emoji表情是4个字节,所以存储不了. 而mysql为了解决这个问题,在5.5.3版本之 ...

  8. MySQL 字符串删除表情符_字符串中Emoji表情处理

    吃了经验的亏,因为Emoji表情引起的项目bug被撸主遇到两次了,总有一些调皮的小朋友爱用表情来搞点事.第一次把当时那个表改为utf8mb4解决了,第二次说啥都不好使.网上找了半天,发现好多人不去实验 ...

  9. 截取含有中文、Emoji表情、特殊符号的字符串

    在码代码时经常会遇到截取字符串的问题,有时候字符串会包含中文.Emoji表情.以及一些特殊符号,这时使用String的substring()进行截取操作,结果就有可能是乱码或者不符合要求.这是因为JV ...

最新文章

  1. 中断处理程序上半部和下半部
  2. Python正则表达式中问号的四种用法
  3. Notification的功能和用法 加薪通知
  4. nuxt route 全局管理 route.beforeEach 替代
  5. SAP License:SAP 中的不平
  6. DOS批处理删除文本文件重复的行
  7. 如何通过Excel文件批量生成PDF417二维码
  8. 如何学好3D引擎编程
  9. 基于voidAR实现增强现实之初音未来
  10. 跟随鼠标移动-demo
  11. C++17 关键新特性介绍及代码讲解 (6) — fold expression
  12. 计算机属于机器人相关专业,人工智能属于什么学科门类
  13. word打开文档很久很慢_word打开慢,详细教您怎么解决word打开慢
  14. java网页制作会说话的汤姆猫_android 仿 会说话的汤姆猫 源码
  15. 使用docker部署java服务
  16. symlink(): Protocol error
  17. java怎么清空paint所画图案,[求助]怎么样消除之前画过的轨迹
  18. 神经网络的前向和反向传播
  19. Nervos 双周报第 8 期:用爱发电的 RustCon Asia
  20. 手机html5 onmousemove,vue监听鼠标移动事件onmousemove卡顿问题

热门文章

  1. 百练4982 踩方格
  2. 教程 | 如何利用C++搭建个人专属的TensorFlow
  3. LXD 2.0 系列(十二):调试,及给 LXD 做贡献
  4. oracle sql 语句如何插入全年日期?
  5. C#中的Dictionary字典类介绍(转载)
  6. php调用twitter api
  7. shell下数字和字符串比较操作命令
  8. ActiveX控件的另类免费签名法
  9. python小波分析法检测火焰_一种基于小波分析的网络流量异常检测方法
  10. python 40位的数减个位数_Python数据分析入门教程(五):数据运算