zoukankan      html  css  js  c++  java
  • ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!!

    今天调个下载程序。当下载的URL中含有中文时候,无法下载,比如:

    http://www.huachu.com.cn/itbook/booklist.asp?tsmc=汇编

    我就用 .net 中的 Server.UrlEncode 函数进行转换。但是这样仍然不行。试验了很久也没有找到原因。后来怀疑 ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样。一实验。竟然确实是。

    试验代码:

    ASP.net 中 如下代码? Response.Write(Server.UrlEncode("汇编")); ?返回: %e6%b1%87%e7%bc%96

    ASP 中 如下代码 Response.Write Server.URLEncode("汇编")?? 返回: %BB%E3%B1%E0

    产生这个问题的原因:ASP.net 中的 Server.UrlEncode 默认是按照 UTF-8 编码方式进行处理的。而ASP中是按照本地设置编码方式进行处理的。

    如果你在 ASP.net 下采用如下的编码: ASP 和 ASP.net 的结果就会一样:

    Response.Write(HttpUtility.UrlEncode("汇编",Encoding.Default));

    采用:Response.Write(HttpUtility.UrlEncode("汇编",Encoding.UTF8));? 返回的就是 Response.Write(Server.UrlEncode("汇编"));?? 返回的结果。

    ?

  • 相关阅读:
    CSS3 Media Queries 片段
    针对移动设备的CSS3布局
    移动Web界面样式-CSS3
    em与px区别-CSS教程
    webApp添加到iOS桌面
    字典(dick)
    元组(Tuple)
    列表(list)
    字符串的常用方法
    运算符
  • 原文地址:https://www.cnblogs.com/huqingyu/p/31608.html
Copyright © 2011-2022 走看看