utf8encoding類_編碼_解碼

wisdomone1發表於2011-10-28


知識要點:

  1. 表示 Unicode 字元的 UTF-8 編碼
  2. 編碼是一個將一組 Unicode 字元轉換為一個位元組序列的過程。解碼是一個反向操作過程,即將一個編碼位元組序列轉換為一組 Unicode 字元。
  3. 方法確定將有多少位元組導致對 Unicode 字符集進行編碼,而 方法將執行實際的編碼操作。





    下面的示例演示瞭如何使用 UTF8EncodingUnicode 字串進行編碼,並將它們儲存在位元組陣列中。請注意,將 encodedBytes 解碼回字串時不會丟失資料


using System;
using System.Text;

class UTF8EncodingExample {
    public static void Main() {
        // Create a UTF-8 encoding.
//生成utf8物件
 UTF8Encoding utf8 = new UTF8Encoding(); // A Unicode string with two characters outside an 8-bit code range. // uf8字串
String unicodeString = "This unicode string contains two characters " + "with codes outside an 8-bit code range, " + "Pi (\u03a0) and Sigma (\u03a3)."; Console.WriteLine("Original string:"); Console.WriteLine(unicodeString); // Encode the string.

//透過utf8.getbytes方法對字串進行utf8編碼
 Byte[] encodedBytes = utf8.GetBytes(unicodeString); Console.WriteLine(); Console.WriteLine("Encoded bytes:");
//透過foreach迴圈把byte陣列中每個元素顯示出來
 foreach (Byte b in encodedBytes) // b為陣列元素 encodedbytes為陣列
{ Console.Write("[{0}]", b); } Console.WriteLine(); // Decode bytes back to string. // Notice Pi and Sigma characters are still present.

//用utf8.getstring把編碼的utf8解碼出來,解碼與編碼是反向操作
String decodedString = utf8.GetString(encodedBytes); Console.WriteLine(); Console.WriteLine("Decoded bytes:"); Console.WriteLine(decodedString); } }

   上述關鍵兩上方法引用如下:
            UTF8Encoding.GetBytes 方法
              

           
           UTF8Encoding.GetString 方法
             

   注意方法的引數型別

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9240380/viewspace-709858/,如需轉載,請註明出處,否則將追究法律責任。

相關文章