zoukankan      html  css  js  c++  java
  • C#支持中文的格式化字符长度方法

    支持中文的格式化字符长度,自动添加...符号

        #region 格式化字符串长度
        /// <summary>
        /// 格式化字符串长度
        /// </summary>
        /// <param name="str">输入的字符串</param>
        /// <param name="n">截取的长度</param>
        /// <returns>被截取完的字符串</returns>
        public static string stringformat(string str, int n)
        {
            ///
            ///格式化字符串长度,超出部分显示省略号,区分汉字跟字母。汉字2个字节,字母数字一个字节
            ///
            string temp = string.Empty;
            if (System.Text.Encoding.Default.GetByteCount(str) <= n)//如果长度比需要的长度n小,返回原字符串
            {
                return str;
            }
            else
            {
                int t = 0;
                char[] q = str.ToCharArray();
                for (int i = 0; i < q.Length && t < n; i++)
                {
                    if ((int)q[i] >= 0x4E00 && (int)q[i] <= 0x9FA5)//是否汉字
                    {
                        temp += q[i];
                        t += 2;
                    }
                    else
                    {
                        temp += q[i];
                        t++;
                    }
                }
                return (temp + "...");
            }
        }
        #endregion
  • 相关阅读:
    记计账需求分析
    进度条07
    Runner站立会议03
    Runner站立会议02
    Runner站立会议01
    构建之法阅读笔记03
    团队成员介绍
    团队进展报告(1)
    今日事——Sprint计划会议
    团队开发——软件需求分析报告
  • 原文地址:https://www.cnblogs.com/taobox/p/3085326.html
Copyright © 2011-2022 走看看