当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 字符串处理:中英文混排固定长度截取问题

ASP.NET
Proxy
关于DEV的TreeList控件的使用(1)
用C#给程序加启动画面并只允许一个应用程序实例运行
Vb.net进阶:.NET 中的代码页(CodePage)
XMLHTTP 对象及其方法简介
C#:获得文件版本信息及只读文件的删除
C#:文件的按行读/写及文件目录对话框的使用
What is Mono?
C#:ListBox的2个常用方法Add,Clear与Items的2个属性
使用属性和反射过渡从数据存取层到业务物件1
安装Mono
使用属性和反射过渡从数据存取层到业务物件 - II
Mono介绍(无图片)
[JavaScript]一段把客户端的中文字串转换成UTF-8的代码
Mono 基本概念
Hello Mono
对开发的程序(制作CAB)进行签名,并允许网站中使用
锁住你的EXCEL
DCG升级了!
怎样在C#中调用Delphi6写的DLL

ASP.NET 中的 字符串处理:中英文混排固定长度截取问题


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 139 ::
收藏到网摘: n/a

/// <summary>
  /// 从包含中英文的字符串中截取固定长度的一段,strInput为传入字符串,intLen为截取长度(一个汉字占两个位)。
  /// </summary>
  public string cutString(string strInput,int intLen)
  {
   strInput=strInput.Trim();
   byte[] myByte = System.Text.Encoding.Default.GetBytes(strInput);   
   if(myByte.Length>intLen)
   {
    //截取操作
    string resultStr="";
    for(int i=0;i<strInput.Length;i++){
     byte[] tempByte=System.Text.Encoding.Default.GetBytes(resultStr);
     if(tempByte.Length<intLen-4)
     {
      resultStr+=strInput.Substring(i,1);
     }
     else{
      break;
     }     
    }
    return resultStr+" ...";
   }
   else{
    return strInput;
   }
  }