string str= System.BitConverter.ToString( System.Text.Encoding.UTF8.GetBytes("你好"));str得到的是"E4-BD-A0-E5-A5-BD"请问怎么通过"E4BDA0E5A5BD"字符串反向得出“你好”

解决方案 »

  1.   


                string s = "E4BDA0E5A5BD";
                byte[] bs = new byte[s.Length / 2];
                int j = 0;
                for (int i = 0; i < s.Length; i+=2)
                {
                    string str = s.Substring(i, 2);
                    bs[j] = (byte)int.Parse(str, System.Globalization.NumberStyles.HexNumber);
                    j++;
                }
                s = Encoding.UTF8.GetString(bs);
      

  2.   

    bs[j] = Convert.ToByte(str, 16);这个也可以,看上去更简单些
      

  3.   

    用哈希值,system.security.cryptography.HMACSHAI