我们在浏览网页的时候常常看到一些列表信息,有些信息因为太长而现实部分信息,后边的则用省略号代替,那么这种效果如何实现呢?下边是实现过程:
实例:超过3个字后边的用省略号代替
前端
<a href='newscontent.aspx?newsid=<%# Eval("id") %>' target="_blank" title='<%# Eval("title") %>'><%# StringTruncat( Eval("title").ToString(),3,"...") %></a>
后台
/// <summary>
/// 将制定字符串按制定长度进行剪切
/// </summary>
/// <param name="oldStr">需要截断的字符串</param>
/// <param name="maxLength">字符串的最大长度</param>
/// <param name="endWith">超过长度的后缀</param>
/// <returns>如果超过长度,返回截断后的新字符串加上后缀,否则返回原字符串</returns>
public static string StringTruncat(string oldStr, int maxLength, string endWith)
{
if (string.IsNullOrEmpty(oldStr))
return oldStr + endWith;
if (maxLength < 1)
throw new Exception("返回的字符串长度必须大于【0】");
if (oldStr.Length > maxLength)
{
string strTmp = oldStr.Substring(0, maxLength);
if (string.IsNullOrEmpty(endWith))
return strTmp;
else
return strTmp + endWith;
}
return oldStr;
}