实现16进制转换为中文字符,但运行出来时乱码,请各位大侠指点一下,谢谢!
private string GetGB(string HexStr)
 {
   byte[] oribyte = new byte[HexStr.Length/2];
   for(int i=0;i<HexStr.Length;i+=2)
   {
    string str = Convert.ToInt32(HexStr.Substring(i,2),16).ToString();
    oribyte[i/2] = Convert.ToByte(HexStr.Substring(i,2),16);
   }
    return System.Text.Encoding.Default.GetString(oribyte);  }

解决方案 »

  1.   

    return System.Text.Encoding.Default.GetString(oribyte);这一句改下:
    System.Text.Encoding.Utf8.GetString(oribyte);
    或者
    System.Text.Encoding.ASCII.GetString(oribyte);多试几次就好了.
      

  2.   

    谢谢楼上的,我改了以后还是不行,多试了好几次,仍然不行。
    我的button是这样的:
    private void button1_Click(object sender, System.EventArgs e)
    {
      this.label1.Text = this.GetGB(this.textBox1.Text);
    }
    应该也没有问题吧?
      

  3.   

    我想用我的QQ做中介.希望你们老大们来拯救新世界的中国编程爱好者,为了中国的软件行业的发展尽自己的一份力量啊 !
    编程俱乐部11.9正式成立
    我是QQ84476972中介者:MARLN(C#标准菜鸟一个)
    本中介不只是针对C#一门语言,还有JAVA  ASP.NET XML DHTML等流行语言!
    希望编程界老大们多多散播知识,我会在CSDN 等广大网站搜索资料来帮助我们菜鸟一族学习语言
    !
    恳请加盟!