C# 關於字符集的問題 預設 UTF-8 Unicode Default
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
byte[] a=new byte[1024];
a=Encoding.UTF8.GetBytes("個");
//Encoding.UTF8.GetBytes();函式功能是從字串對應的字元陣列轉換成以utf-8形式的位元組陣列。
//由以下幾個圖片可知:一個漢字 utf-8編碼需要3個位元組,Unicode 和default(gb2312) 佔用2個位元組。
//轉換可以這麼理解 42 78 兩個位元組通過某種對映方式轉換成3個位元組 228 184 170
byte[] b=new byte[1024];
b = Encoding.Unicode.GetBytes("個");
//漢字“個” 預設 以unicode編碼 表示一系列的unicode字元
byte[] c = new byte[1024];
c = Encoding.Default.GetBytes("個");
String str = Encoding.UTF8.GetString(a);
//Encoding.UTF8.GetString(a)可以這麼理解:以utf-8轉換格式的三個位元組進行合併,然後以unicode的形式轉換成string形式。
String str1 = Encoding.Unicode.GetString(b);
String str2 = Encoding.Default.GetString(c);
//str1 str2 str 均是“個”
d = Encoding.Unicode.GetBytes(str);
byte[] e = new byte[1024];
e = Encoding.Unicode.GetBytes(str1);
//由d和e相等,可知str 和 str1均是由unicode編碼
}
}}