文档章节

截取指定长度文字,超出部分以特定字符代替

白志华
 白志华
发布于 2015/10/18 10:56
字数 299
阅读 6
收藏 0

这是在做新闻发布系统时收录的一个简单算法。感觉挺好用的。效果如下(新闻标题):

 

下面是算法源码:

#region 将指定字符串按指定长度进行剪切
        ///   <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)
        {
            //判断字符串是否为null或空
            if (string.IsNullOrEmpty(oldStr))
            {
                //   throw   new   NullReferenceException( "原字符串不能为空 "); 
                return oldStr + endWith;
            }

            //判断限制长度是否>=1
            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;
        }
        #endregion


下面是Sample:

<asp:TemplateField HeaderText="新闻标题">
    <ItemTemplate>
        <a href='newscontent.aspx?newsid=<%# Eval("id") %>' target="_blank" title="<%# Eval("title") %>"><%# StringTruncat (Eval("title").ToString(),18,"...") %></a>
    </ItemTemplate>
</asp:TemplateField>

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

本文转载自:http://blog.csdn.net/xiaoxian8023/article/details/7272689

共有 人打赏支持
白志华
粉丝 31
博文 265
码字总数 57524
作品 0
长沙
程序员
私信 提问
C# 中按字节数截取字符串

在C#语言中,按字符数截取字符串可采用String类的SubString方法实现,但很多情况下,我们需要按字节数截取字符串。 举例来说,现有一行文字,屏幕上需要展示的界面宽度有限,但文字的总长度可...

北风其凉
2016/05/23
190
0
javaScript的字符串对象

一、字符串对象属性 1.length:计算字符串长度 var strObj=new String("qwer"); console.log(strObj.length); 二、字符串方法 toLowerCase方法:字符串中的字母被转换为小写 toUpperCase()...

博为峰教研组
2016/11/08
3
0
JS~字符串长度判断,超出进行自动截取(支持中文)

在文本框中输入字符,如果超出指定长度,就把它截取,要求中文等于两个字符的长度: 见代码: <html><script src="http://common.cnblogs.com/script/jquery.js" type="text/javascript"></scr......

文文1
2016/03/16
174
0
javascript中String(字符串对象)

javascript中String(字符串对象) String 对象用于处理已有的字符块。 JavaScript 中 slice 、substr 和 substring的区别: 1: String.slice(start,end): 一个新的字符串。包括字符串 string...

cnu2m
2014/05/15
0
0
第 6 章 DML

目录 6.1. INSERT 6.2. copy CREATE TABLE test (c varchar(5)); 现在开始插入数据库,每次增加一个长度 test=> INSERT INTO test VALUES ('1');INSERT 0 1test=> INSERT INTO test VALUES ......

玄学酱
01/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Flask框架web开发:零基础入门

Flask框架是Python开发的一个基于Werkzeug和Jinja 2的web开发微框架,它的优势就是极其简洁,但又非常灵活,而且容易学习和应用。因此Flask框架是Python新手快速开始web开发最好的选择,此外...

笔阁
18分钟前
4
0
VMware前路难测,多个厂家群雄逐鹿

在人们高谈Salesforce、亚马逊等新兴云计算厂商取得的成就时,以VMware、HPE和Cisco为代表的老牌厂商也在进行着自己的转型和变化,而且还取得一定的进展。以VMware为例,虚拟机巨头公布了第二...

linuxCool
21分钟前
1
0
什么是以太坊DAO?(一)

Decentralized Autonomous Organization,简称DAO,以太坊中重要的概念。一般翻译为去中心化的自治组织。 “在区块链上,没有人知道你是一台冰箱”——理查德布朗 到目前为止,我们列出的所有...

geek12345
22分钟前
1
0
linux防火墙操作

一、.对于centos7自带的防火墙的相关指令 #停止firewall systemctl stop firewalld.service #禁止firewall开机启动 systemctl disable firewalld.service #查看firewall的状态 systemctl st......

张锦飞
24分钟前
2
0
Linux 磁盘与磁盘分区

  Linux 系统中所有的硬件设备都是通过文件的方式来表现和使用的,我们将这些文件称为设备文件,硬盘对应的设备文件一般被称为块设备文件。本文介绍磁盘设备在 Linux 系统中的表示方法以及...

SEOwhywhy
33分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部