Android 关于新浪微博字数的处理

来源:互联网 发布:nginx配置缓存时间 编辑:程序博客网 时间:2024/05/19 13:30

需求:最近在做仿新浪微博的项目,遇到关于文本编辑框内文字的处理问题,时时的监听文本框输入了多少字符,当时没有考虑到输入的内容问题,现在要求是一个汉字 == 两个英文字母,标点符号也区分英文和中文,一个中文标点== 两个英文标点。

解决方式:通过输入文本所占的字节数去判断


封装了一个方法:

[java] view plaincopy
  1. /** 
  2.  * 计算微博内容的长度  1个汉字 == 两个英文字母所占的长度  标点符号区分英文和中文 
  3.  * @param c 所要统计的字符序列 
  4.  * @return 返回字符序列计算的长度 
  5.  */  
  6. public static long calculateWeiboLength(CharSequence c) {  
  7.       
  8.        double len = 0;  
  9.        for (int i = 0; i < c.length(); i++) {  
  10.                int temp = (int)c.charAt(i);  
  11.                if (temp > 0 && temp < 127) {  
  12.                        len += 0.5;  
  13.                }else{  
  14.                        len ++;  
  15.                }  
  16.        }  
  17.     return Math.round(len);  
  18. }  
原创粉丝点击