判断EditText是否超过最大字符或最大字节数
程序员文章站
2022-06-21 20:07:51
很多人想到的是android:maxLength="20" 这种形式,但这种仅仅是计算个数,中文也计算为1个,并不能满足需求。那么我们就需要从字节入手,常规的editable.toString().getBytes()拿到的中文,默认UTF-8是1个中文计算3个字节长度。现在要解决的就是怎么让他转为我们通用的1个中文计算2个字节长度。方法很简单,如下:byte[] bytes = editable.toString().getBytes("GBK");这个计算出来的就是1个中文计算为2个字节长度...
很多人想到的是android:maxLength="20" 这种形式,但这种仅仅是计算个数,中文也计算为1个,并不能满足需求。
那么我们就需要从字节入手,常规的editable.toString().getBytes()拿到的中文,默认UTF-8是1个中文计算3个字节长度。
现在要解决的就是怎么让他转为我们通用的1个中文计算2个字节长度。方法很简单,如下:
byte[] bytes = editable.toString().getBytes("GBK");
这个计算出来的就是1个中文计算为2个字节长度了。
因遇到这个问题,搜了一下百度,要么方法很复杂,要么结果不正确的,所以特在此记录。
本文地址:https://blog.csdn.net/zqbemail10/article/details/110175231
下一篇: 趣图:程序员周五遇到 Bug 后