自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C#字節(jié)數組轉換成字符串淺析

開發(fā) 后端
這里介紹C#字節(jié)數組轉換成字符串,如果還想從 System.String 類中找到方法進行字符串和字節(jié)數組之間的轉換,恐怕你會失望了。為了進行這樣的轉換,我們不得不借助另一個類:System.Text.Encoding。

C#語言還是比較常見的東西,這里我們主要介紹C#字節(jié)數組轉換成字符串,包括介紹字符串轉換到字節(jié)數組等方面。

C#字節(jié)數組轉換成字符串

如果還想從 System.String 類中找到方法進行字符串和字節(jié)數組之間的轉換,恐怕你會失望了。為了進行這樣的轉換,我們不得不借助另一個類:System.Text.Encoding。該類提供了 bye[] GetBytes(string) 方法將字符串轉換成字節(jié)數組,還提供了 string GetString(byte[]) 方法將C#字節(jié)數組轉換成字符串。

System.Text.Encoding 類似乎沒有可用的構造函數,但我們可以找到幾個默認的 Encoding,即 Encoding.Default(獲取系統(tǒng)的當前 ANSI 代碼頁的編碼)、Encoding.ASCII(獲取 7 位 ASCII 字符集的編碼)、Encoding.Unicode(獲取采用 Little-Endian 字節(jié)順序的 Unicode 格式的編碼)、Encoding.UTF7(獲取 UTF-7 格式的編碼)、Encoding.UTF8(獲取 UTF-8 格式的編碼) 等。這里主要說說 Encoding.Default 和 Encoding.Unicode 用于轉換的區(qū)別。

在字符串轉換到字節(jié)數組的過程中,Encoding.Default 會將每個單字節(jié)字符,如半角英文,而把每個雙字節(jié)字符,如漢字。而 Encoding.Unicode 則會將它們都轉換成兩個字節(jié)。我們可以通過下列簡單的了解一下轉換的方法,以及使用 Encoding.Default 和 Encodeing.Unicode 的區(qū)別:

  1. private void TestStringBytes() {  
  2. string s = "C#語言";  
  3. byte[] b1 = System.Text.Encoding.Default.GetBytes(s);  
  4. byte[] b2 = System.Text.Encoding.Unicode.GetBytes(s);  
  5. string t1 = ""t2 = "";  
  6. foreach (byte b in b1) {  
  7. t1 += b.ToString("") + " ";  
  8. }  
  9. foreach (byte b in b2) {  
  10. t2 += b.ToString("") + " ";  
  11. }  
  12. this.textBox1.Text = "";  
  13. this.textBox1.AppendText("b1.Length = " + b1.Length + "\n");  
  14. this.textBox1.AppendText(t1 + "\n");  
  15. this.textBox1.AppendText("b2.Length = " + b2.Length + "\n");  
  16. this.textBox1.AppendText(t2 + "\n");  

運行結果如下,不說詳述,相信大家已經明白了。

  1. b1.Length = 6 
  2. 67 35 211 239 209 212  
  3. b2.Length = 8 
  4. 67 0 35 0 237 139 0 138  

將C#字節(jié)數組轉換成字符串,使用 Encoding 類的 string GetString(byte[]) 或 string GetString(byte[], int, int) 方法,具體使用何種 Encoding 還是由編碼決定。在 TestStringBytes() 函數中添加如下語句作為實例:

  1. byte[] bs = {97, 98, 99, 100, 101, 102};  
  2. string ss = System.Text.Encoding.ASCII.GetString(bs);  
  3. this.textBox1.AppendText("The string is: " + ss + "\n"); 

運行結果為:The string is: abcdef

【編輯推薦】

  1. C#創(chuàng)建Windows服務詳細介紹
  2. C#動態(tài)編譯簡單剖析
  3. C#靜態(tài)字段與實例字段分析
  4. C#匿名方法詳細剖析
  5. C#命名屬性簡單描述
責任編輯:佚名 來源: IT專家網
相關推薦

2009-10-14 15:44:04

VB.NET字節(jié)數組

2009-08-11 10:26:49

C#算法C#字符串反轉

2009-09-01 17:50:23

C#截取字符串

2009-09-02 13:41:57

C#字符串操作

2010-03-30 16:45:22

Oracle 字符串

2009-08-28 10:44:46

C#字符數組轉換

2009-09-03 18:45:06

GridView格式化

2009-08-20 14:31:55

C#正則表達式字符串

2009-08-28 11:03:17

C#長整型數據

2009-08-26 13:07:07

C#交錯數組

2009-08-21 16:37:54

C#客戶端程序

2009-08-26 13:24:54

C#字符串

2009-08-24 17:06:37

C#字符串

2009-08-07 13:50:11

C#字符串

2009-08-07 14:15:21

C#字符串分割

2009-08-07 14:22:56

C#字符串搜索

2009-08-07 14:34:33

C#模式字符串

2009-08-24 13:04:44

操作步驟C#字符串

2009-08-06 16:01:09

C#字符串函數大全

2009-08-21 16:27:44

C#服務端程序
點贊
收藏

51CTO技術棧公眾號