ASCIIEncoding n = new ASCIIEncoding(); byte[] b = n.GetBytes(str); int l = 0; // l 为字符串之实际长度 for (int i=0;i = b.Length-1;i++) { if (b[i] ==63) //判断是否为汉字或全脚符号 { l++; } l++; }
Java判断一个字符串是否有中文一般情况是利用Unicode编码(CJK统一汉字的编码区间:0x4e00–0x9fbb)的正则来做判断,但是其实这个区间来判断中文不是非常精确,因为有些中文的标点符号比如:,。等等是不能识别的。 以下是比较完善的判断方法:CharUtil.java 代码如下: import java.util.regex.Pattern; public class CharUtil { ...