请问一个中文汉字在C#中占多少个字节(byte)?

解决方案 »

  1.   

    两个如果是unicode,任何字符都占两个,包括字母数字等
      

  2.   

    char[] charData = {'我'};
    byte[] byteData = new byte[3];
    Encoder e = Encoding.UTF-8.GetEncoder();
    e.GetBytes(charData,0,1,byteData,0);
    foreach(byte a in byteData){
    Console.WriteLine(a);
    }
    结果是三个0-255的数字,即三个两位16进制的的数,即三个字节,请问我这样分析有什么问题?
      

  3.   


    对的,所以说的是要看是什么编码,你用的是UTF-8,大伙说的大多都是ANSI和UNICODE,在这两种编码中是2位,日常用得最多的也是这两种。