深圳网站建设、深圳建网站、网站建设公司定制属于您的高端个性化网站!

搜索深圳网站建设相关案例及相关信息 服务热线:13530005572/15112579390
首页 > 网站建设知识 > .net截取字符串长度的正确方法

.net截取字符串长度的正确方法

  • 所属分类:网站建设知识
  • 作者: 独占网络
  • 更新时间: 2015-2-19 12:20:18
  • 返回列表
我们写网页程序的时候经常会发现字符长度超出范围了,这种情况下我们就需要截取字符的长度,让其不超过我们需要长度,我们经常使用 Substring方法来截取字符长度,但是这种方法有许多的问题,比如,这种方法在截取中文字符还有英文字符的时候长度就会截取得不样了,那我们下面就来讲一下我们正确的截取方法吧。
public static string CutString(string inputString, int len)
{
    ASCIIEncoding ascii = new ASCIIEncoding();
    int tempLen = 0;
    string tempString = "";
    byte[] s = ascii.GetBytes(inputString);
    for (int i = 0; i < s.Length; i++)
    {
        if ((int)s[i] == 63)
        {
            tempLen += 2;
        }
        else
        {
            tempLen += 1;
        }

        try
        {
            tempString += inputString.Substring(i, 1);
        }
        catch
        {
            break;
        }

        if (tempLen > len)
            break;
    }
    //如果截过则加上半个省略号 
    byte[] mybyte = System.Text.Encoding.Default.GetBytes(inputString);
    if (mybyte.Length > len)
        tempString += "…";
    return tempString;
}
上面的代码是一个比较完美的截取字符长度的方法,这个方法让我们的截取字符的时候中文长度跟英文长度是一致的,所以直接用上面的代码就可完成的您截取了。
如有不懂,联系独占网络(http://www.sz886.com)
 

相关推荐

您值得信任的网站建设专家!

为其提供系统的基于互联网的品牌行销策略 、 创意执行 、 追踪运营服务 。