• Server.UrlEncode与Server.UrlDecode(url传递中文的解决方案)


    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 转换)。一样要将传递的中文参数进行编码,在接收时再进行解码。

    js中:

     escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串

    可以使用 unescape() 对 escape() 编码的字符串进行解码。
    >> 进行传递 
    <script language="JavaScript"> 
    function GoUrl() 

    var Name = "中文参数"; 
    location.href = "B.aspx?Name="+escape(Name); 

    </script> 
    <body onclick="GoUrl()"> 
    >> 进行接收 
    string Name = Request.QueryString["Name"]; 
    Response.Write(Server.UrlDecode(Name));

    一般来说。设置web.config文件就可以了。但是如果你用 JavaScript 调用 webservice 方法的话(往webservice里面传递中文参数)。设置 web.config 文件好象无效。

  • 相关阅读:
    C#学习-多态
    C#学习-子类的初始化顺序
    C#学习-面向对象
    Python数据类型知识点全解
    python 复制图片到剪贴板
    pyperclip
    pyautogui
    多线程代码案例
    常用正则表达式最强整理(速查手册)
    python os
  • 原文地址:https://www.cnblogs.com/PiaoMiaoGongZi/p/4195934.html
Copyright © 2020-2023  润新知