Android新浪微博字数の処理について
需要:最近、新浪微博を模したプロジェクトで、テキスト編集ボックス内の文字に関する処理問題に遭遇し、時々テキストボックスにどれだけの文字が入力されたかを傍受し、当時は入力の内容の問題を考慮していなかったが、今は漢字==2つの英語のアルファベットが要求され、句読点も英語と中国語を区別し、1つの中国語の句読点==2つの英語の句読点が要求されている.
解決策:テキストのバイト数を入力することで判断
1つの方法がカプセル化されています.
使用時に直接呼び出せばいい
解決策:テキストのバイト数を入力することで判断
1つの方法がカプセル化されています.
/**
* 1 ==
* @param c
* @return
*/
public static long calculateWeiboLength(CharSequence c) {
double len = 0;
for (int i = 0; i < c.length(); i++) {
int temp = (int)c.charAt(i);
if (temp > 0 && temp < 127) {
len += 0.5;
}else{
len ++;
}
}
return Math.round(len);
}
使用時に直接呼び出せばいい