首页 新闻 会员 周边 捐助

c#乱码问题用了各种方法 没解决

0
悬赏园豆:20 [已解决问题] 解决于 2013-08-03 00:11

程序是一般处理程序输出

            var httpcontext = context.Response;
            httpcontext.Buffer = true;
            httpcontext.ExpiresAbsolute =    DateTime.Now.AddSeconds(0);
            httpcontext.AddHeader("Pragma", "No-Cache");
            httpcontext.Expires = 0;
        public void ResponseClient(string result, HttpContext context)
        {
            context.Response.Write("{ \"result\":\"" + result + "\"}");
        }

 

也设置了

Response.ContentType
Response.Charset 

都是utf-8 网上有的说在配置文件里面加globalization  也无效

最后对输出的字符串这样处理

 HttpUtility.UrlEncode(str,System.Text.Encoding.GetEncoding("utf-8"));

还是乱码

在页面设置<meta http-equiv="content-type" content="text/html;charset=utf-8">

都没有用!

浏览器图片:

 

 

求解决

s_p的主页 s_p | 初学一级 | 园豆:140
提问于:2013-08-02 17:25
< >
分享
最佳答案
0

看看你的chrome版本,貌似这个问题不影响程序~

收获园豆:12
libaoheng | 小虾三级 |园豆:1433 | 2013-08-02 18:06

s_p | 园豆:140 (初学一级) | 2013-08-02 18:16

@s_p: 再试一下,加上httpcontext.ContentType = "application/json";

 var httpcontext = context.Response;
            httpcontext.Buffer = true;
            httpcontext.ExpiresAbsolute = DateTime.Now.AddSeconds(0);
            httpcontext.AddHeader("Pragma", "No-Cache");
            httpcontext.Expires = 0;
            httpcontext.ContentType = "application/json";

            ResponseClient("广东省惠州市惠城区花园水中路/离豪威大酒店0米/离\"114.391901\"0米......太长了==",context);

我得到的结果:

没加是这样:

libaoheng | 园豆:1433 (小虾三级) | 2013-08-02 19:48

@李宝亨:谢谢 我解决了 不是这个问题 是这个

context.Response.Write("{ \"result\":\"" + result + "\"}"); result作为变量 里面的值有引号 所以前台ajax解析的时候出了问题.后来用c#只带的类库序列化对象 就可以了 不手动拼写。

s_p | 园豆:140 (初学一级) | 2013-08-03 00:10

@s_p: 指定了ContentType为json会自动帮你转义的

libaoheng | 园豆:1433 (小虾三级) | 2013-08-03 00:32
其他回答(2)
0

context.Response.Write(System.Text.Encoding.GetEncoding("utf-8").GetBytes("string"),0,System.Text.Encoding.GetEncoding("utf-8").GetBytes("string").Length);

收获园豆:3
Launcher | 园豆:45050 (高人七级) | 2013-08-02 17:45

这个有语法 类型错误 !

支持(0) 反对(0) s_p | 园豆:140 (初学一级) | 2013-08-03 00:10
0

问题可能不是出在Response

收获园豆:5
dudu | 园豆:30778 (高人七级) | 2013-08-02 18:02

是的!

支持(0) 反对(0) s_p | 园豆:140 (初学一级) | 2013-08-03 00:10
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册