欢迎来到天天文库
浏览记录
ID:11878027
大小:34.00 KB
页数:6页
时间:2018-07-14
《c#截取定长字符串函数》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、C#截取定长字符串函数.txt我很想知道,多少人分开了,还是深爱着。ゝ自己哭自己笑自己看着自己闹。你用隐身来躲避我丶我用隐身来成全你!待到一日权在手,杀尽天下负我狗。//////按字符串实际长度截取定长字符窜//////原字符串///要截取的长度///string型字符串publicstaticstringCutSt
2、r(stringstr,intlength){inti=0,j=0;foreach(charchrinstr){if((int)chr>127){i+=2;}else{i++;}if(i>length){str=str.Substring(0,j)+"...";break;}j++;}returnstr;}//方法三:publicstringCutStr(stringsInString,intiCutLength){if(sInString==null
3、
4、sInString.Length==0
5、
6、
7、iCutLength<=0){return"";}intiCount=System.Text.Encoding.GetEncoding("Shift_JIS").GetByteCount(sInString);if(iCount>iCutLength){intiLength=0;for(inti=0;i8、newchar[]{sInString[i]});iLength+=iCharLength;if(iLength==iCutLength){sInString=sInString.Substring(0,i+1);break;}elseif(iLength>iCutLength){sInString=sInString.Substring(0,i);break;}}}returnsInString;}//方法四:利用正则表达式区分英文、汉字,并截取字符串publicstaticstringCut9、Str(stringstringToSub,intlength){Regexregex=newRegex("[u4e00-u9fa5]+",RegexOptions.Compiled);char[]stringChar=stringToSub.ToCharArray();StringBuildersb=newStringBuilder();intnLength=0;for(inti=0;i10、[i]).ToString())){nLength+=2;}else{nLength=nLength+1;}if(nLength<=length){sb.Append(stringChar[i]);}else{break;}}if(sb.ToString()!=stringToSub){sb.Append("...");}returnsb.ToString();}//方法一://////C#截取定长字符串函数//////11、">原字符串///长度(原字符串中全是汉字时的汉字个数)///截取后的字符串(ReCutStr)publicstaticstringCutStr(stringstring1,intLen1){stringReCutstr=string.Empty;boolRemark=false;//如果不够长度,为假intn=string1.Length;intTrueLen=0;intPcount=0;12、//英文字计数intGcount=0;//中文字计数intLcount=0;//长度计数char[]bytes=string1.ToCharArray();foreach(charchrAinbytes){if(Convert.ToInt32(chrA)>=0&&Convert.ToInt32(chrA)<=255){Pcount=Pcount+1;}else//如果是中文{Gcount=Gcount+1;}Lcount=(Pcount/2)+Gcount;TrueLen=Pcount+Gcou
8、newchar[]{sInString[i]});iLength+=iCharLength;if(iLength==iCutLength){sInString=sInString.Substring(0,i+1);break;}elseif(iLength>iCutLength){sInString=sInString.Substring(0,i);break;}}}returnsInString;}//方法四:利用正则表达式区分英文、汉字,并截取字符串publicstaticstringCut
9、Str(stringstringToSub,intlength){Regexregex=newRegex("[u4e00-u9fa5]+",RegexOptions.Compiled);char[]stringChar=stringToSub.ToCharArray();StringBuildersb=newStringBuilder();intnLength=0;for(inti=0;i10、[i]).ToString())){nLength+=2;}else{nLength=nLength+1;}if(nLength<=length){sb.Append(stringChar[i]);}else{break;}}if(sb.ToString()!=stringToSub){sb.Append("...");}returnsb.ToString();}//方法一://////C#截取定长字符串函数//////11、">原字符串///长度(原字符串中全是汉字时的汉字个数)///截取后的字符串(ReCutStr)publicstaticstringCutStr(stringstring1,intLen1){stringReCutstr=string.Empty;boolRemark=false;//如果不够长度,为假intn=string1.Length;intTrueLen=0;intPcount=0;12、//英文字计数intGcount=0;//中文字计数intLcount=0;//长度计数char[]bytes=string1.ToCharArray();foreach(charchrAinbytes){if(Convert.ToInt32(chrA)>=0&&Convert.ToInt32(chrA)<=255){Pcount=Pcount+1;}else//如果是中文{Gcount=Gcount+1;}Lcount=(Pcount/2)+Gcount;TrueLen=Pcount+Gcou
10、[i]).ToString())){nLength+=2;}else{nLength=nLength+1;}if(nLength<=length){sb.Append(stringChar[i]);}else{break;}}if(sb.ToString()!=stringToSub){sb.Append("...");}returnsb.ToString();}//方法一://////C#截取定长字符串函数//////11、">原字符串///长度(原字符串中全是汉字时的汉字个数)///截取后的字符串(ReCutStr)publicstaticstringCutStr(stringstring1,intLen1){stringReCutstr=string.Empty;boolRemark=false;//如果不够长度,为假intn=string1.Length;intTrueLen=0;intPcount=0;12、//英文字计数intGcount=0;//中文字计数intLcount=0;//长度计数char[]bytes=string1.ToCharArray();foreach(charchrAinbytes){if(Convert.ToInt32(chrA)>=0&&Convert.ToInt32(chrA)<=255){Pcount=Pcount+1;}else//如果是中文{Gcount=Gcount+1;}Lcount=(Pcount/2)+Gcount;TrueLen=Pcount+Gcou
11、">原字符串///长度(原字符串中全是汉字时的汉字个数)///截取后的字符串(ReCutStr)publicstaticstringCutStr(stringstring1,intLen1){stringReCutstr=string.Empty;boolRemark=false;//如果不够长度,为假intn=string1.Length;intTrueLen=0;intPcount=0;
12、//英文字计数intGcount=0;//中文字计数intLcount=0;//长度计数char[]bytes=string1.ToCharArray();foreach(charchrAinbytes){if(Convert.ToInt32(chrA)>=0&&Convert.ToInt32(chrA)<=255){Pcount=Pcount+1;}else//如果是中文{Gcount=Gcount+1;}Lcount=(Pcount/2)+Gcount;TrueLen=Pcount+Gcou
此文档下载收益归作者所有