C#计算字符串长度,汉字算两个字符

Posted WebEnh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#计算字符串长度,汉字算两个字符相关的知识,希望对你有一定的参考价值。

在C#中的字符串类String中,有个Length属性表示字符串的长度,但该字段返回的是字符的个数,如果字符串中含有中文字符的话,一个汉字占用两个字符的长度,此时获取的长度就不够精确,当然也看具体业务需要。以下方法可用于计算字符串长度,字符串中的一个汉字计为两个字符。

/// <summary>
        /// 得到字符串长度,一个汉字长度为2
        /// </summary>
        /// <param name="inputString">参数字符串</param>
        /// <returns></returns>
        public static int StrLength(string inputString)
        {
            System.Text.ASCIIEncoding ascii = new System.Text.ASCIIEncoding();
            int tempLen = 0;
            byte[] s = ascii.GetBytes(inputString);
            for (int i = 0; i < s.Length; i++)
            {
                if ((int)s[i] == 63)
                    tempLen += 2;
                else
                    tempLen += 1;
            }
            return tempLen;
        }

 

备注:此文转载自C#计算字符串长度,汉字算两个字符_IT技术小趣屋

以上是关于C#计算字符串长度,汉字算两个字符的主要内容,如果未能解决你的问题,请参考以下文章

js判断输入字符串长度(汉字算两个字符,字母数字算一个):例如 要求输入12的字,24个字节

java中如何计算一个字符串的byte长度(一个汉字多少字符)

一个汉字算一个字符吗

C语言怎么计算字符长度?

C语言怎么计算字符长度?

C语言怎么计算字符长度?