/** * 分别获取一个字符串里面的中文和其他字符所占的字节数 */ public static int getLength(String str){ int strLength = 0; String chinese = "[\u0391-\uFFE5]"; /* * 获取字符串长度,如果含有中文字符,则每个中文字符占2个字符长度,否则为1 */ for (int i = 0; i < str.length(); i++) { /* * 获取一个字符 */ String temp = str.substring(i,i+1); if(temp.matches(chinese)){ /* * 中文字符长度占2个 */ strLength+=2; }else{ /* * 其他字符长度占1个 */ strLength+=1; } } return strLength; }