项目A,所有的文件编码和内容编码都是UTF-8。

项目B,Index.aspx文件编码和页面内容编码都是GB2312。

项目A返回JSON格式数据给项目B时,其它浏览器都可以就是IE不行。后来在网上找了下资料,解决了。特此记录,以备后用。

项目A,服务端,如下:

modelUser.UserRealName = System.Web.HttpUtility.UrlEncode(modelUser.UserRealName, System.Text.Encoding.UTF8);  

项目B,对返回的数据进行解码,如下:

decode(data[0]["UserRealName"])
/****************************************************************************************************************/
/*Url解码 System.Web.HttpUtility.UrlEncode(modelUser.UserRealName, System.Text.Encoding.UTF8);***************/
/****************************************************************************************************************/
function decode(zipStr) {
var uzipStr = "";
for (var i = 0; i < zipStr.length; i++) {
var chr = zipStr.charAt(i);
if (chr == "+") {
uzipStr += " ";
} else if (chr == "%") {
var asc = zipStr.substring(i + 1, i + 3);
if (parseInt("0x" + asc) > 0x7f) {
uzipStr += decodeURI("%" + asc.toString() + zipStr.substring(i + 3, i + 9).toString()); ;
i += 8;
} else {
uzipStr += AsciiToString(parseInt("0x" + asc));
i += 2;
}
} else {
uzipStr += chr;
}
}
return uzipStr;
} function StringToAscii(str) {
return str.charCodeAt(0).toString(16);
} function AsciiToString(asccode) {
return String.fromCharCode(asccode);
} function encode(unzipStr) {
var zipstr = "";
var strSpecial = "!\"#$%&'()*+,/:;<=>?[]^`{|}~%";
var tt = "";
for (var i = 0; i < unzipStr.length; i++) {
var chr = unzipStr.charAt(i);
var c = StringToAscii(chr);
tt += chr + ":" + c + "n";
if (parseInt("0x" + c) > 0x7f) {
zipstr += encodeURI(unzipStr.substr(i, 1));
} else {
if (chr == " ")
zipstr += "+";
else if (strSpecial.indexOf(chr) != -1)
zipstr += "%" + c.toString(16);
else
zipstr += chr;
}
}
return zipstr;
}
/****************************************************************************************************************/

问题虽然解决了,但是感觉不妥,旁边有个小伙子技术还可以,问了下,就加了以下代码就解决了:

context.Response.ContentEncoding = Encoding.GetEncoding("GB2312");

ASP.NET 返回字符串 IE6乱码问题的更多相关文章

  1. SpringMVC3的ResponseBody返回字符串(JSON)乱码问题解决

    近日做一个小项目,用spring mvc 做到ajax请求获取jquery ztree 异步获取树返回json对象时出现了乱码,试了各种办法,查了各种资料,一开始以为是数据库的编码有问题,经测试没问题 ...

  2. SpringMVC 学习-返回字符串中文乱码问题解决

    一.使用 SpringMVC 框架时,如果 HTTP 请求资源返回的是中文字符串,则会出现乱码.原因如下: SpringMVC 框架可以使用 @RequestBody 和 @ResponseBody ...

  3. springmvc返回json字符串中文乱码问题

    问题: 后台代码如下: @RequestMapping("menuTreeAjax") @ResponseBody /** * 根据parentMenuId获取菜单的树结构 * @ ...

  4. 使用 springmvc请求 返回 字符串时 ,中文出现乱码

    @RequestMapping(value="/askQuestion" ,method = RequestMethod.GET , produces = {"appli ...

  5. responseBody注解可以直接返回字符串 && springMVC Controller get请求返回字符串是中文乱码解决

    //获取商品描述信息(html片段)字符串返回给前台填充html @RequestMapping(value="/item/desc/{itemId}",produces=Medi ...

  6. 解决ASP.NET中的各种乱码问题

    解决ASP.NET中的各种乱码问题 阅读目录 开始 页面显示乱码问题 AJAX提交的数据乱码问题 JavaScript中正确的URL编码方式 ASP.NET中正确的URL编码方式 正确的URL编码方式 ...

  7. 【转】asp.net Cookie值中文乱码问题解决方法

    来源:脚本之家.百度空间.网易博客 http://www.jb51.net/article/34055.htm http://hi.baidu.com/honfei http://tianminqia ...

  8. 解决ASP.NET MVC3与FusionCharts乱码问题

    程序代码  代码如下 复制代码 <script type="text/javascript">    $(document).ready(function () {   ...

  9. SpringMvc @ResponseBody字符串中文乱码原因及解决方案

    今天突然发现一个问题,后来在网上也找到了很多解决思路,自己也查找到了问题所在,记录一下. @RequestMapping(value = "/demo1") @ResponseBo ...

随机推荐

  1. 常用的JavaScript模式

    模式是解决或者避免一些问题的方案. 在JavaScript中,会用到一些常用的编码模式.下面就列出了一些常用的JavaScript编码模式,有的模式是为了解决特定的问题,有的则是帮助我们避免一些Jav ...

  2. Struts2中的Unable to load configuration错误的分析与解决方法

    当我们遇到 Unable to load configuration. 这样的错误时,可以根据具体的错误提示找出错误的原因. Unable to load configuration. - inter ...

  3. VIJOS P1037搭建双塔[DP]

    描述 2001年9月11日,一场突发的灾难将纽约世界贸易中心大厦夷为平地,Mr. F曾亲眼目睹了这次灾难.为了纪念“9?11”事件,Mr. F决定自己用水晶来搭建一座双塔. Mr. F有N块水晶,每块 ...

  4. C++ create_task详解

    IAsyncOperation<T>^ asyncOperation = create_async( []() { return create_task(FirstAsync(...)) ...

  5. QC学习一:Windows环境中Quality Center 9.0安装详解

    一.安装前准备 1.安装环境:windows XP.SQL Server2005 2.准备安装文件:Quality Center 9.0 (qc10以上,包括qc10,qc只支持安装在服务器操作系统上 ...

  6. java io (一)

    对于文件内容的操作主要分为两大类 分别是:字符流 字节流 其中,字符流有两个抽象类:Writer   Reader 其对应子类FileWriter和FileReader可实现文件的读写操作 Buffe ...

  7. [No00000A]计算机的存储单位

    位 bit (比特)(Binary Digits):存放一位二进制数,即 0 或 1,最小的存储单位. 字节 byte:8个二进制[bit (比特)(Binary Digits)]位为一个字节(B), ...

  8. Jenkins 安装

    1. 调整tomcat的jvm配置, 以免内存不够, 在catalina.sh中 #!bin/sh下添加 JAVA_OPTS="-server -Xms1024m -Xmx1024m -XX ...

  9. this.down和this.up用法

    down既可以加id也可以加xtype

  10. 2055 [ZJOI2009]假期的宿舍

    P2055 [ZJOI2009]假期的宿舍 题目描述 学校放假了 · · · · · · 有些同学回家了,而有些同学则有以前的好朋友来探访,那么住宿就是一个问题.比如 A 和 B 都是学校的学生,A ...