C#字符ASCII碼學習經驗
C#語言有很多值得學習的地方,這里我們主要介紹C#字符ASCII碼,包括介紹漢字字符的 Unicode 碼等方面。
C#字符ASCII碼
很多時候我們需要得到一個英文字符的 ASCII 碼,或者一個漢字字符的 Unicode 碼,或者從相關的編碼查詢它是哪一個字符的編碼。很多人,尤其是從 VB 程序序轉過來學 C# 的人,會報怨 C# 里為什么沒有提供現成的函數來做這個事情——因為在 VB 中有 Asc() 函數和 Chr() 函數用于這類轉換。
但是如果你學過 C,你就會清楚,我們只需要將英文字符型數據強制轉換成合適的數值型數據,就可以得到相應的C#字符ASCII碼;反之,如果將一個合適的數值型數據強制轉換成字符型數據,就可以得到相應的字符。
C# 中字符的范圍擴大了,不僅包含了單字節字符,也可以包含雙字節字符,如中文字符等。而在字符和編碼之間的轉換,則仍延用了 C 語言的做法——強制轉換。不妨看看下面的例子
- private void TestChar() {
- char ch = 'a'; short ii = 65;
- this.textBox1.Text = "";
- this.textBox1.AppendText("The ASCII code of \'"
+ ch + "\' is: " + (short) ch + "\n");- this.textBox1.AppendText("ASCII is " + ii.ToString() +
", the char is: " + (char) ii + "\n");- char cn = '中'; short uc = 22478;
- this.textBox1.AppendText("The Unicode of \'" + cn + "\' is:
" + (short) cn + "\n");- this.textBox1.AppendText("Unicode is " + uc.ToString() +
", the char is: " + (char) uc + "\n");- }
它的運行結果是
- The ASCII code of 'a' is: 97
- ASCII is 65, the char is: A
- The Unicode of '中' is: 20013
- Unicode is 22478, the char is: 城
從這個例子中,我們便能非常清楚的了解——通過強制轉換,可以得以字符的編碼,或者得到編碼表示的字符。如果你需要的不是 short 型的編碼,即可得到 int 等類型的編碼值。
【編輯推薦】