#region 格式化字符串,取字符串前 strLength 位,其他的用...代替.计算字符串长度。汉字两个字节,字母一个字节FormatString(string str,int len)

              /// <summary>

              /// 格式化字符串,取字符串前 strLength 位,其他的用...代替.计算字符串长度。汉字两个字节,字母一个字节

              /// </summary>

              /// <param name="str">字符串</param>

              /// <param name="strLength">字符串长度</param>

              /// <returns></returns>

              public static string FormatStr(string str,int len)

              {                    

                     ASCIIEncoding ascii = new ASCIIEncoding();

                     int tempLen=0;

                     string tempString="";

                     byte[] s = ascii.GetBytes(str);

                     for(int i=0;i<s.Length;i++)

                     {

                            if((int)s[i]==63)

                            {

                                   tempLen+=2;

                            }

                            else

                            {

                                   tempLen+=1;

                            }



                            try

                            {

                                   tempString+=str.Substring(i,1);

                            }

                            catch

                            {

                                   break;

                            }



                            if(tempLen>len)

                                   break;

                     }

                     //如果截过则加上半个省略号

                     byte[] mybyte=System.Text.Encoding.Default.GetBytes(str);

                     if(mybyte.Length>len)

                            tempString+="...";



                     tempString=tempString.Replace(" ","  ");

                     tempString=tempString.Replace("<","<");

                     tempString=tempString.Replace(">",">");

                     tempString=tempString.Replace('\n'.ToString(),"<br>");

                     return tempString;



              }

              #endregion

相关文章:

  • 2022-01-11
猜你喜欢
  • 2021-06-14
  • 2021-05-29
  • 2022-12-23
  • 2021-12-19
  • 2022-12-23
  • 2021-06-24
  • 2021-07-02
相关资源
相似解决方案