注: mysql 的编码方式不能改, 只能通过程序来修改编码方式;郁闷!

解决方案 »

  1.   

    web.config
    数据库链接
    Data Source=192.168.1.5;Database=test;User ID=uct;Password=uct123456;Charset=gb2312;
    <system.web>
       <globalization requestEncoding="gb2312" responseEncoding="gb2312" fileEncoding ="gb2312"/>
      </system.web>
      

  2.   

    这个问题我碰到过,原因是string把latin1的编码方式用gb2312给解开了,那当然是乱码了。修正的思路也很简单,首先用把乱码的数据用gb2312还原到byte[],再用latin1重新解码即可。
    很有效
      

  3.   

    MYSQL的编码方式是可以改成GBK的
      

  4.   

    To:277894613(秒大刀),谢谢你的提醒,同时感谢各位热心的朋友.
    正确方法:
    C#:
    public static String Latin2GBK(String str)
            {
                try
                {
                    byte[] bytesStr = Encoding.GetEncoding("latin1").GetBytes(str);
                    return Encoding.GetEncoding("GB2312").GetString(bytesStr);
                }
                catch
                {
                    return str;
                }
            }Java:
    public static String ISO8859toGBK(String str)
        {
            try
            {
                byte[] bytesStr = str.getBytes("ISO8859_1");         
                return new String(bytesStr, "GBK");
            }
            catch (Exception e)
            {
                return str;
            }
        }