Encoding iso = Encoding.GetEncoding("iso-8859-1");
Encoding gb = Encoding.Default; byte[] bs = gb.GetBytes("我+123+abc");
byte[] bss = Encoding.Convert(gb,iso, bs); //转换成iso-8859-1编码的字节流
byte[] bbs = Encoding.Convert(iso, gb,bss); //转换成gb2312编码的字节流
char[] chars = gb.GetChars(bss);
string s = new string(chars);
MessageBox.Show(s); //输出: ?+123+abc汉字的都变成了“?”,该怎么解决呢?另外,哪位大侠能告诉我怎么查看 “U-00000000 - U-0000007F: 0xxxxxxx ”这样的数据呢?
Encoding gb = Encoding.Default; byte[] bs = gb.GetBytes("我+123+abc");
byte[] bss = Encoding.Convert(gb,iso, bs); //转换成iso-8859-1编码的字节流
byte[] bbs = Encoding.Convert(iso, gb,bss); //转换成gb2312编码的字节流
char[] chars = gb.GetChars(bss);
string s = new string(chars);
MessageBox.Show(s); //输出: ?+123+abc汉字的都变成了“?”,该怎么解决呢?另外,哪位大侠能告诉我怎么查看 “U-00000000 - U-0000007F: 0xxxxxxx ”这样的数据呢?
虽然是用latin1存的,但是别的程序可以正确的读出中文,比如SQLyog 和 PhP。 所以我觉得是C#里面的转码问题。