private string getLeftSubString(string content, int length)
{
Encoding encoding = Encoding.GetEncoding("gb2312");
StringBuilder sb = new StringBuilder();
int totalLength = 0;
foreach (char contentChar in content)
{
int size = encoding.GetByteCount(new char[] { contentChar });
if (totalLength + size > length -2)
{
sb.Append("..");
break;
}
sb.Append(contentChar);
totalLength += size;
}
return sb.ToString();
}
方法不是最好的,只是提供一个解决方案。请大家指正。