Atlas提交中文时乱码的完整解决方案.

Ajax中最常出现的一个问题就是服务端的包含中文的Response被XmlHttp编码后变成乱码.Atlas中也同样存在这个问题.
这虽然不是什么大问题,但有时候确实很令人烦恼,现给出我的两个解决方案,有需要的朋友可以参照解决.

1).修改web.config编码为
<globalization requestEncoding="utf-8" responseEncoding="utf-8"/>,若之前你的编码为gb2312,这次的改动可能会带来其他页面的乱码出现,那你只好整站统一utf-8编码

2).对提交字符串编码(推荐)

static string FormatEncode(string str)
        
{
            
byte[] buffer = System.Text.Encoding.Default.GetBytes(str);
            
return System.Text.Encoding.UTF8.GetString(buffer);
        }

用该方法对输入字符串格式化后再提交,则不会再出现问题.
此方法的好处在于无须修改页面编码,修改后出问题几率小;
缺点是每次提交进行一次编码,使性能下降.但是可以预计这种提交数据与展示相比肯定是要少的多,因此对性能的影响有限.

posted on 2006-11-22 22:15  wiseman  阅读(1469)  评论(3编辑  收藏  举报

导航