java中如何计算一个字符串的byte长度(一个汉字多少字符)
来源:互联网 发布:金星和方俊水平 知乎 编辑:程序博客网 时间:2024/04/29 03:30
中文并不一定是占两个字节的,具体占多少字节是跟具体的编码方式相关的。
比如说:GB2312、GBK、GB18030 编码是占用两个字节的,但是 UTF-8 编码的话至少需要占用三个字节。
有一个简单方法,就是把大于 0xff 的字符都作为两个字符(当然是在 GBK 环境下)
- 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");
上面代码假设你的数据库编码格式是 GBK 的,而不是 UTF-8 的,如果是 UTF-8 的话,上面的代码无效!
1字节等于8比特,一个字母是1字节,而一个汉字要用2个字节。
一个汉字=2个字符
- java中如何计算一个字符串的byte长度(一个汉字多少字符)
- 计算字符串长度(可同时字母和汉字,字母占一个字符,汉字占2个字符)
- 获取文本框中字符长度,一个汉字按2个字符计算
- java中计算包含汉字字符串的长度
- 409. Longest Palindrome (计算可由一个字符串中数字字符构成的最长回文数的长度)
- 默认字符编码是UTF8的linux服务器,java计算字符串长度(半角算一个,全角算两个)
- JAVA查询一个字符串中字符是不是有汉字
- Objective-C ,ios,iphone开发基础:如何判断一个字符是不是中文字符。计算一段字符串的长度。
- php 编一函数计算一个字符串中有多少个字母.汉字.数字?
- 一个中文汉字算两位,一个英文字母算一位,计算中文和英文混合的字符串长度。字符串:String str = "我不好java";
- 一个中文汉字算两位,一个英文字母算一位,计算中文和英文混合的字符串长度。字符串:String str = "我不好java";
- 计算出一个字符串中最长的字符的长度
- Oracle数据库中查看一个汉字占多少字符
- 计算字符的长度,汉字的长度
- 计算一段字符串的长度是否超出规定字数,两个英文字符占一个长度。
- 取得长度为length的字符串,一个汉字算两个字符
- 取得长度为length的字符串,一个汉字算两个字符
- java 计算字符串最后一个单词的长度,空格隔开
- php读取动态页面生成静态html文件的方法
- SQLServer 数据库加锁的知识
- MPI常用命令
- 极限
- MSDN 关于锁的阐释
- java中如何计算一个字符串的byte长度(一个汉字多少字符)
- 大学计算机专业排名
- 统计数字问题
- The biggest difference between using straight JDBC and Spring's JDBC framework
- Sybase objects/types
- 数据结构(四)——单链表 、带头结点的单链表、循环链表 及其实现
- hdfs源码分析思路
- General best practice designrecommendation for triggers.
- Android 2.3 拨号上网流程分析--java层