在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个字节的长度。


版权声明:本文为qq_36949403原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_36949403/article/details/121887063