在做Asp.Net开发的时候,经常会遇到页面乱码的问题,下面是在网上收集的相关资料,请大家参考:
解决的方法一般有3种:
1.设置web.config文件
<system.web>
......
<globalization requestEncoding="gb2312" responseEncoding="gb2312" culture="zh-CN" fileEncoding="gb2312" />
......
</system.web>
2.传递中文之前,将要传递的中文参数进行编码,在接收时再进行解码。
>> 进行传递
string Name = "中文参数";
Response.Redirect("B.aspx?Name="+Server.UrlEncode(Name)) ;
>> 进行接收
string Name = Request.QueryString["Name"];
Response.Write(Server.UrlDecode(Name)) ;
3.如果是从 .HTML 文件向 .Aspx 文件进行传递中文参数的话(即不从后台用 Redirect()方法进行 Url 转换)。一样要将传递的中文参数进行编码,在接收时再进行解码。
>> 进行传递
<script language="JavaScript">
function GoUrl()
{
var Name = "中文参数";
location.href = "B.aspx?Name="+escape(Name) ;
}
<body onclick="GoUrl()">
>> 进行接收
string Name = Request.QueryString["Name"];
Response.Write(Server.UrlDecode(Name)) ;
总结:
一般来说。设置web.config文件就可以了。但是如果你用 JavaScript 调用 webservice 方法的话(往webservice里面传递中文参数)。设置 web.config 文件好象无效。
或用
Response.Redirect("test1.aspx?111="+System.Web.HttpUtility.UrlEncode("中华人明共和国")) ;
//建议使用最后如果是从其他的页面获取中文参数没有乱码,那就更简单了
string message ="http://localhost/Test/test1.aspx?111="+System.Web.HttpUtility.UrlEncode("中华人明共和国");
http:
//你要获取某个页面的返回值的地址"
//发送请求
HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(message) ;
//接受请求
HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse() ;
Stream receiveStream = myHttpWebResponse.GetResponseStream() ;
StreamReader readStream = new StreamReader(receiveStream, System.Text.Encoding.GetEncoding("GB2312")) ;
//此为要取页面的返回值输出的返回结果
returnValue = readStream.ReadToEnd();
转自:http://www.cnzzad.com/tut/47825.html
分享到:
相关推荐
asp.net中URL参数传值中文乱码的三种解决办法
asp.net页面通过URL参数传值中文乱码问题解决办法
自己找的 ASP.NET中页面传值的几种方法收藏ASP.NET中页面传值的几种方法收藏
解析6种ASP.NET跨页面传值的方法,大家都知道跨页面问题比较麻烦的。这里有六种,总有适合你的。不过跨页面不是跨域哈
ASP.NET中页面传值的几种方法:是每一个初学者都应了解的。
asp.net 页面之间传值方法总结.
ASP.NET的几种传值方式,学习ASP.NET必须要掌握的几种方式
ASP.net跨页面传值方式 ASP.net跨页面传值方式
对于asp.net的页面间的各种传值方式进行了详细的说明
asp.net的几种传值方式练习。 session,cookie,application,server.transfer
ASP.NET页面间的传值的几种方法(总结)
ASP.NET跨页面传值技巧,为你解决一些页面传值的过程!
ASP.NET 页面间传值的几种方法 ASP.NET 页面间传值的几种方法 ASP.NET 页面间传值的几种方法 ASP.NET 页面间传值的几种方法 ASP.NET 页面间传值的几种方法
这是一个asp.net的程序,实现了用ajax在本页面传值给后台
关于asp.net中中文产生乱码问题
asp.net中五种页面传值方法,熟悉使用的五种页面传值方法的使用,对你开发网站有大的帮助的
集合了ASP.NET页面的多种传值方式,可逐个尝试,以便找到最适用的方法
asp.net中cookie和session的传值方式和区别
asp.net父子页面传值,资源共享是为了共同进步, 希望帮助需要的兄弟。
能够帮助大家在ASP.NET中几种传值技巧