日期:2014-05-20  浏览次数:20460 次

编码转换问题,谁知道怎么解决,什么原理?
private   void   button1_Click(object   sender,   EventArgs   e)
                {
                          //将 "你们好 "从GB2312   转换成UTF-8这时ss是乱码
                        string   ss   =   ConvertFunc( "你们好 ",   "utf-8 ",   "gb2312 ");
                        //将乱码转换成GB2312就编成 "你们? ",经过测试发现,如果是双数的中文,就没问题,单数的中午就会末尾变?号,这是为什么,为什么?  
                        MessageBox.Show(ConvertFunc(ss,   "gb2312 ",   "utf-8 "));    
                }

                public   string   ConvertFunc(string   str,   string   From,   string   To)
                {
                        return   Encoding.GetEncoding(To).GetString(Encoding.GetEncoding(From).GetBytes(str));
                }

------解决方案--------------------
在字符串末尾加一个 "\n "
------解决方案--------------------
中文占2个字节(就是全角),西文占1个字节(即半角)
------解决方案--------------------
應該需要將SS先轉換為Base64編碼,在轉換為UTF-8吧
------解决方案--------------------
http://www.cnblogs.com/sxlfybb/archive/2005/06/10/171573.html
------解决方案--------------------
路过

------------------------
http://fenglin.xland.cn
------------------------
------解决方案--------------------
等着接分