zoukankan      html  css  js  c++  java
  • asp.net中URL参数传值中文乱码的三种解决办法

    在做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();
  • 相关阅读:
    BFS visit tree
    Kth Largest Element in an Array 解答
    Merge k Sorted Lists 解答
    Median of Two Sorted Arrays 解答
    Maximal Square 解答
    Best Time to Buy and Sell Stock III 解答
    Best Time to Buy and Sell Stock II 解答
    Best Time to Buy and Sell Stock 解答
    Triangle 解答
    Unique Binary Search Trees II 解答
  • 原文地址:https://www.cnblogs.com/wangfuyou/p/5044207.html
Copyright © 2011-2022 走看看