在.net中,string 类是一系列 Unicode 字符 ,所以当我们依据字节来截断字符串时,往往会出现一下小问题(如字符串长度不准确,截出乱码等等) ,下面是一个比较简单易行的解决方法。不说了,贴代码,呵呵。。。
public
string
CutString(
string
str,
int
len)
... {
Encoding encoding = System.Text.Encoding.GetEncoding("GB2312");
if (encoding.GetByteCount(str) <= len)
return str;
string returnValue = encoding.GetString(encoding.GetBytes(str), 0, len + 1);
return returnValue.Remove(len, 1);
}
... {
Encoding encoding = System.Text.Encoding.GetEncoding("GB2312");
if (encoding.GetByteCount(str) <= len)
return str;
string returnValue = encoding.GetString(encoding.GetBytes(str), 0, len + 1);
return returnValue.Remove(len, 1);
}