java 压缩汉字字节_java中计算汉字的字节数
生活随笔
收集整理的這篇文章主要介紹了
java 压缩汉字字节_java中计算汉字的字节数
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
中文并不一定是占兩個字節(jié)的,具體占多少字節(jié)是跟具體的編碼方式相關(guān)的。
比如說:GB2312、GBK、GB18030 編碼是占用兩個字節(jié)的,但是 UTF-8 編碼的話至少需要占用三個字節(jié)。
有一個簡單方法,就是把大于 0xff 的字符都作為兩個字符(當(dāng)然是在 GBK 環(huán)境下)
Java code
public static int count(String str) {
if(str == null || str.length == 0) {
return 0;
}
int count = 0;
char[] chs = str.toCharArray();
for(int i = 0; i < chs.length; i++) {
count += (chs[i] > 0xff) ? 2 : 1;
}
return count;
}
或者你直接使用 int len = str.getBytes("gbk");
上面代碼假設(shè)你的數(shù)據(jù)庫編碼格式是 GBK 的,而不是 UTF-8 的,如果是 UTF-8 的話,上面的代碼無效!
1字節(jié)等于8比特,一個字母是1字節(jié),而一個漢字要用2個字節(jié)。
一個漢字=2個字符
總結(jié)
以上是生活随笔為你收集整理的java 压缩汉字字节_java中计算汉字的字节数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java byte(字节_【原创】Jav
- 下一篇: 勇者斗恶龙7图文攻略 者斗恶龙7怎么玩