C#.net地址传参汉字乱码解决方案
C#.net地址传参汉字乱码解决方案
web.config文件:
<system.web>
<globalization
requestEncoding="GB2312"
responseEncoding="GB2312"
/></system.web>
使用上面的语句就可以了。
其他方法:
asp.net默认的编码是UTF-8
js文件里的编码也是UTF-8
当你要在aspx页面上进行传中文参数时会出现乱码
-request.aspx接收参数页-
response.aspx传送参数页-
例一:a href=request.aspx?str=中国人/a
解决办法一:
1.可以和改webconfig的编码 如:
location path=‘response.aspx‘
system.web
globalization fileEncoding=‘gb2312‘ requestEncoding=‘gb2312‘ responseEncoding=‘gb2312‘ culture=‘zh-CN‘/
/system.web
/location
注意:你也要把request.aspx页面上的编码也改成同样的,虽然中文乱码解决了,但如果你用到了js文件就会出现乱码
//用这以上方法的话不会改变网站的其它页面上的编码
location path=‘request.aspx‘
system.web
globalization fileEncoding=‘gb2312‘ requestEncoding=‘gb2312‘ responseEncoding=‘gb2312‘ culture=‘zh-CN‘/
/system.web
/location
解决办法二:
1.如果你不想动webconfig 你可以在response.aspx.cs“里面对参数进行编码 如:
response.aspx在页面上:
a href=request.aspx?str=%=str%/a
response.cs页面上:
声明一个变量str
public string str=中国人;
str= HttpUtility.UrlEncode(str,System.Text.Encoding.GetEncoding(GB2312));
//这时str已经是编码后的
2.而在request.aspx.cs文件中也要进行转换 如:
声明一个变量 System.Collections.Specialized.NameValueCollection gb2312=HttpUtility.ParseQueryString(Request.Url.Query,System.Text.Encoding.GetEncoding(GB2312));
string str=gb2312[str];
这里的str就是你要接收的中文。
例二
如果你想在js里面传送中文参数 如:
request.aspx?str=+encodeURI(中国人);
这样就不会出现乱码了
例三
就是我在cshn上找到的一个方法我也没试过,大家可以试一下
protected string GetQueryString(string sKey,System.Text.Encoding e)
{string QueryString=Server.UrlDecode(System.Web.HttpUtility.UrlDecode(Request.ServerVariables[ QUERY_STRING ],e));
System.Text.RegularExpressions.Regex reg = new System.Text.RegularExpressions.Regex(sKey+=([^$]*?)($) );
System.Text.RegularExpressions.Match m = reg.Match(QueryString);
if (m.Success) { return m.Result( $1 ); }
else return String.Empty;
}
//以上这个不受编码影响,只需知道原来传入的编码就可.
C#.net地址传参汉字乱码解决方案的更多相关文章
- url地址传参中文乱码处理
1.将字符串转码:new String(“xxxxx”.getBytes("iso-8859-1"),"utf-8") 这种转码方式有很大的弊端,因为它是使用指 ...
- js get 传参 汉字 乱码问题
js encodeURI(encodeURI(searchWord)) java URLDecoder.decode(searchWord,"utf-8")
- postman使用get请求的url地址传参中文乱码问题
编码之后
- Servlet获取JSP中的汉字乱码问题解决方案
1.String customerName=request.getParameter("customer_name");这样会出现乱码 解决方案很简单: String custom ...
- 关于url传参中文乱码问题
之前都一直很不了解中文编码得问题,之前在做项目中没碰到那么头痛的问题.所以一直没有了解中文乱码的问题. 问题描述: 地址: http://localhost:8080/sun-government/c ...
- JSP中pageEncoding和charset区别,中文乱码解决方案(转载)
转载自:JSP中pageEncoding和charset区别,中文乱码解决方案 JSP指令标签中<%@ page contentType="text/html;charset=GB23 ...
- boost::xml——基本操作以及中文乱码解决方案 (续)
本博文主要想说明以下两点: 1.对于上一篇的<boost::xml——基本操作以及中文乱码解决方案>解释,这篇博文基本解决了正确输入输出中英文问题,但是好像还没有解决修改中文出现乱码的问题 ...
- 解决js输出汉字乱码问题
当我们需要使用js输出汉字时,偶然会出现输出的中文汉字乱码的情况,在网上收了很多解决方案 1.在mata中加 <meta content="text/html; charset=utf ...
- (转)JSP HTML JAVASCRIPT 中文乱码 解决方案 大全
JSP HTML JAVASCRIPT 中文乱码 解决方案 大全 JSP的中文字符一直是各位初学者首先要解决的问题,下面进行了总结,也给出了解决办法.C4.1 HTML中文编码转换 在JSP文件中的静 ...
随机推荐
- ShopNc实例化对象
1.模型 $model_member = Model('member'); 2.接口 require_once BASE_ROOT_PATH.'/member/api/smiMember/action ...
- Mr_matcher的细节1
1.NodeHandle类(或者NodeHandle句柄)的私有名称 1)句柄可以让你通过构造函数指定命名空间 ros::NodeHandle nh("my_namespace") ...
- Nanami's Digital Board
题意: 给出点(x1,y1),求以x=x1为上边界,或下边界:以y=y1为左边界,或右边界矩形的最大值(矩形内所有的点均为1) 定义四个数组lft[][],rht[][],up[][],down[][ ...
- javascript总结13:循环语句
1 While循环 While(条件表达式){ 只要条件表达式结果为true,循环一直执行,当条件表达式结果为false的时候,循环终止 } While循环语句需现在循环体外定义变量. 2 for循环 ...
- 一张图看懂ASP.NET MVC5认证和授权过滤器的执行顺序
IAuthenticationFilter是MVC5中的新特性,它有2个关键方法: OnAuthentication OnAuthenticationChallenge 当IAuthenticatio ...
- Math对象的使用
1. Math.floor() === 向下取整 2.Math.random() === 取一个浮点随机数 3.Math.round() === 四舍五入后一个最接近的整数 4.Math.ceil() ...
- angular 双向绑定
<input type="text" [(ngModel)]="name"> {{name}} import { Component, OnInit ...
- VSCode调试设置
tasks.json { "version": "0.1.0", "isShellCommand": true, "args&qu ...
- WPF MultiSelect模式下ListBox 实现多个ListBoxItem拖拽
WPF 的ListBox不支持很多常见的用户习惯,如在Explorer中用鼠标可以选择多项Item,并且点击已经选择的Item,按住鼠标左键可以将所有已选择Item拖拽到指定的位置.本文简单的实现了这 ...
- php+jquery 实现 ajax上传图片到非当前服务器
用 html file控件上传图片,因为 $_FILES["file"] 是传到当前服务器,想要上传到另外一个服务器需要通过服务器脚本实现. 1.图片上传 引入jquery 和 a ...