中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C#如何獲取帶漢字的字符串真實長度

發布時間:2021-05-22 13:41:36 來源:億速云 閱讀:282 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關C#如何獲取帶漢字的字符串真實長度的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

正常情況下,我們是直接去string的length的,但是漢字是有兩個字節的,所以直接用length是錯的。如下圖:

C#如何獲取帶漢字的字符串真實長度

所以應該用以下代碼來獲取長度:

private void button1_Click(object sender, EventArgs e)
    {
      string s = textBox1.Text;
      int i = GetLength(s);
      MessageBox.Show(i.ToString());
    }

    public static int GetLength(string str)
    {
      if (str.Length == 0)
        return 0;
      ASCIIEncoding ascii = new ASCIIEncoding();
      int tempLen = 0; 
      byte[] s = ascii.GetBytes(str);
      for (int i = 0; i < s.Length; i++)
      {
        if ((int)s[i] == 63)
        {
          tempLen += 2;
        }
        else
        {
          tempLen += 1;
        }
      }
      return tempLen;
    }

運行結果如下圖:

C#如何獲取帶漢字的字符串真實長度

也可以用這個獲取長度:

int i = System.Text.Encoding.Default.GetBytes(s).Length;

通過系統提供函數我們就可以獲取中文的真實長度,是不是很簡單

C#是什么

C#是一個簡單、通用、面向對象的編程語言,它由微軟Microsoft開發,繼承了C和C++強大功能,并且去掉了一些它們的復雜特性,C#綜合了VB簡單的可視化操作和C++的高運行效率,以其強大的操作能力、優雅的語法風格、創新的語言特性和便捷的面向組件編程從而成為.NET開發的首選語言,但它不適用于編寫時間急迫或性能非常高的代碼,因為C#缺乏性能極高的應用程序所需要的關鍵功能。

感謝各位的閱讀!關于“C#如何獲取帶漢字的字符串真實長度”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

开鲁县| 探索| 凤庆县| 当阳市| 武平县| 曲麻莱县| 敦煌市| 龙南县| 温宿县| 邛崃市| 北川| 铁力市| 焦作市| 色达县| 灵丘县| 友谊县| 绥宁县| 迭部县| 游戏| 祁连县| 江孜县| 柳州市| 新乡市| 济阳县| 慈利县| 伊春市| 峨眉山市| 平江县| 胶州市| 凤城市| 天祝| 绿春县| 青铜峡市| 潮安县| 平乡县| 汝城县| 临泽县| 仪征市| 甘洛县| 富源县| 高清|