Java中计算处理中文两个字符长度问题解决(中文2个字符,英文1个字符) |
您所在的位置:网站首页 › java中文字符串截取 › Java中计算处理中文两个字符长度问题解决(中文2个字符,英文1个字符) |
在java中定义一个 String str="我爱中国" ; str.length() 的长度是4 个字符,但是有时有我们处理文件格式的时候 ,定义固定的长度,中文只计算一个字符的话,总的长度格式就不对了,这个时候我们就需要处理中文占两个字符,然后读文件格式的时候才会对应上。下面直接上代码。 public static void main(String[] args) { // TODO Auto-generated method stub String str = "蒙子abc"; int len = String_length(str); System.out.println("调用方法处的长度>>>>>>>>>>>:" + len); int len2 = str.length(); System.out.println("未调用方法的长度>>>>>>>>>>:" + len2); } private static int String_length(String value) { int length = 0; String chinese = "[\u4e00-\u9fa5]"; for (int i = 0; i < value.length(); i++) { String temp = value.substring(i, i + 1); if (temp.matches(chinese)) { length += 2; } else { length += 1; } } return length; } }返回的是处理中文字符串2个字节的长度。 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |