what is wrong? chinese are in the range of 4e00-9fa5also use 
Convert.ToInt32(Str[i]).ToString("X2")

解决方案 »

  1.   

    to saucer(思归) :
    Convert.ToInt32(Str[i]).ToString("X2")
    还是跟原来一样。这边有个说明:“对于汉字则以其内码的16进制值来表示,如“测试”应为B2E2CAD4。”
    但是,我的结果却是:6D4B8BD5
    为什么不一样?
      

  2.   

    谢谢各位的回答!
    Convert.ToInt32(Str[i]).ToString("X2")还是不行。up!
      

  3.   

    System.Text.Encoding enc = System.Text.Encoding.GetEncoding("GB2312");
    string Str = "\tHello, World测试";
    for (int i = 0; i < Str.Length; ++i)
    {
    byte[] bs = enc.GetBytes(Str[i].ToString());
    for (int j=0; j < bs.Length; j++)
    Console.Write("{0:X2}", bs[j]);
    Console.WriteLine();
    }
      

  4.   

    已经搞定!
    非常感谢 saucer(思归) !结贴!