显示部分文字,我是在sql 语句中取 substring ,如Title=SUBSTRING(Title,0,50)+'...' 
可是这样效果不好啊,显示的长短不一的,而且 都带了...

解决方案 »

  1.   

    SubString().PadRight(20);
    把字符串长度调整为20,不足的用空格表示
      

  2.   

    不知道你是用的什么数据库.
    你可在数据库中做一个函数,专门根据传递的文本取出固定长度的文本来.而且必须是以字节方式计算的,这样才可保证长度一致.
    如果没有办法,那么你可在页面代码中实现下面是一个截取的函数,你可在页面绑定的时候调用它即可./// <summary>
    /// 按字符串实际长度截取定长字符窜
    /// </summary>
    /// <param name="str">原字符串</param>
    /// <param name="length">要截取的长度</param>
    public static string GetString(string str, int length)
    {
    int i = 0, j = 0;
    foreach(char chr in str)
    {
    if((int)chr > 127)
    {
    i += 2;
    }
    else
    {
    i ++;
    }
    if (i > length)
    {
    str = str.Substring(0, j) + "...";
    break;
    }
    j ++;
    }
    return str;
    }