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技術小趣屋

博主個人技術交流群:960640092,博主微信公眾號如下:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM