蝈蝈俊.net

-- 用随笔来记录自己的技术感触
随笔 - 597, 评论 - 4064, 引用 - 276

导航

关于

这里是我的技术Blog,下一代CSDN社区Blog在 http://blog.csdn.net/ghj1976/

标签

每月存档

最新留言

  • re:学习笔记:7种结构型设计模式简单对比
    <p>最新在家创业系统 ----刚从国外引进,市场巨大。 ----在家可经营所有国家生意,事业规模宏大。 ----不需求人与说服;不用放厚脸皮去推销。 ----极小投资;零风险;成...
    by jackielongteng(注册) on 2009/6/14 13:43:56
  • re:作用域
    <p>☆                    &deg;∵☆       &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;...
    by jackielongteng(注册) on 2009/6/14 13:03:25
  • re:Html标签嵌套对展示性能的影响
    <p><strong>所有的浏览器都按照你提到的浏览器解析Html规则来解析嘛?</strong></p>
    by Cola(注册) on 2009/6/12 23:07:28
  • re:Html5
    <p>目前来说,HTML5还只是一个梦想,呵呵:)</p>
    by 开心就好(注册) on 2009/6/11 16:31:54
  • re:多线程与SqlConnection.Close
    <p>好服月租型IT服务台,与你共成长! 月租型ITSM软件,注册即可免费体验! 详情请登录官方网站:<a href="http://www.servicezon.co...
    by qzhibo(注册) on 2009/6/3 15:14:21
  • re:多线程Singleton单件模式
    <pre><span style="color: #0000ff;">//Another way public</span> <sp...
    by Yaojian(注册) on 2009/4/22 14:02:35
  • re:Thread.Sleep(0)
    <p>学习了~</p>
    by shuitong888(注册) on 2009/4/8 14:29:24
  • re:Html标签嵌套对展示性能的影响
    <p>DIV固然好 但IE6,7,8 firefox,safari ....做美工的人要累死.</p>
    by ryq1(注册) on 2009/4/3 14:16:25
  • re:用.net 编码实现朗读文本的方法
    <p>我第一次 按键时 能听到声音,但是第二次按键时,没反应。网页一直在 loading.&nbsp;是什么原因?</p>
    by tracytang949(注册) on 2009/3/27 7:01:09
  • re:information_schema.routines与sysobjects
    <p>用sys.procedures多好。</p>
    by luke(注册) on 2009/3/16 16:45:49
  • re:SQL Server 2005 配置发送邮件
    <p>&lt;A href="<a href="http://www.3rt.info">http://www.3rt.info</...
    by ives007(注册) on 2009/2/26 16:47:00
  • re:推荐 Gemini 这个bug管理工具
    <p>你好!首先非常感谢推荐使用Gemini,这段时间在使用Gemini,有些问题想请教以下。</p> <p>1.Create Issue 以后,设置了Visib...
    by CowboyRyan(注册) on 2009/2/20 15:45:08
  • re:推荐 Gemini 这个bug管理工具
    <p>你好!首先非常感谢推荐使用Gemini,这段时间在使用Gemini,有些问题想请教以下。</p> <p>1.Create Issue 以后,设置了Visib...
    by CowboyRyan(注册) on 2009/2/20 15:32:06
  • re:虚机搭配NLB负载平衡时碰到"没有接口可用于安装新的群集"的解决方案
    <p>google newsid</p>
    by iads(注册) on 2009/2/13 17:25:07
  • re:try catch 与线程
    <p>确实是这样的。因为异常机制本质上是堆栈操作,而各线程的堆栈是独立的。</p>
    by st_szr(注册) on 2009/1/21 9:46:05
  • re:try catch 与线程
    <p>没啥啊,线程就是新启动了一个,当然异常不会影响到原有的线程了。</p> <p>你应该在线程里面合适的位置写上自己的捕获代码就行了。</p>
    by laozizhu(注册) on 2009/1/19 16:33:21
  • re:我的2008,征服天堂
    <p>蝈蝈,可惜我帮不了你啊!</p>
    by laozizhu(注册) on 2009/1/19 16:25:45
  • re:try catch 与线程
    <p>呃&hellip;&hellip;是这样的。可怎么处理呢?</p>
    by Anders Liu(注册) on 2009/1/19 11:58:05
  • re:我的2008,征服天堂
    <p>博主是不是去了师部 做了侦查营长呢?</p>
    by huobazi(注册) on 2009/1/9 14:15:33
  • re:我的2008,征服天堂
    <p>@ghj1976:看来真的危机了</p>
    by 开心就好(注册) on 2009/1/9 10:17:37
  • re: 网络带宽的单位
    不过传输的时候,往往还有压缩。
    by luke(匿名) on 2008/12/15 11:00:21
  • re: 网络带宽的单位
    除10不仅仅是为了方便,在传输中,往往加上控制位,所以一个字节往往需要10Bit.
    by 关门放狗(匿名) on 2008/12/13 16:01:30
  • re: 多缓存并存
    对跨进程甚至跨服务器缓存的性能比较怀疑,进程通信和跨服务器通信代价不菲。即使有已有进程外数据可用,如果考虑在进程做份缓存,定期再进程间同步是否更佳?
    by jinglecat(匿名) on 2008/12/12 18:00:05
  • re: 网络带宽的单位
    好像还有一个为了方便换算,厂家使用的是 除10的处理方式的说法:于是100Mb/sec = 100M / 10 = 10M Byte/sec 所以我通常都是用除10而不是除8来做运算的。
    by kentliu(匿名) on 2008/12/11 11:38:55
  • re: 网络带宽的单位
    又不是大S小s
    by luke(匿名) on 2008/12/10 12:04:50

广告

 

今天调个下载程序。当下载的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("汇编"));?? 返回的结果。

?

2003年10月3日 12:29

打印 | 张贴于 2003-10-20 15:05:00 | Tag:.net 编程心得

留言反馈

# 使用 Request.QueryString 接受参数时,跟编码有关的一些问题 编辑
我们先来看以下几个请求,看a.aspx页面用Request.QueryString接受到的是啥信息?页面URLRequest.QueryString[
2007-12-17 12:24:00 | [匿名用户:csdnexpert]
#回复: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
很有用。呵呵:)
2007-08-21 10:34:00 | [匿名用户:笨三]
#回复: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
非常感谢你~我爱你!
2007-04-27 21:33:00 | [匿名用户:Wanted]
#回复: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
可以把asp 和 php 的中文通过传递到 asp.net 接受。

1. 在asp 中 username=server.urlEncode( server.URLpathencode(“测试”) )
2。在php中 username=urlencode(rawurlencode((“测试”) ));

然后在asp.net 获取并解码的方法是

strUsername = HttpUtility.UrlDecode(this.GetQueryStr("username"), System.Text.Encoding.GetEncoding("gb2312"));

这种方法是正确的,本人测试成功
2007-03-16 18:41:00 | [匿名用户:netlynx2000]
#re: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
回楼上关于ASP的UrlEncode函数还原问题!
只能自定义函数了!

<%
function urldecoding(vstrin)
dim i,strreturn,strSpecial
strSpecial = "!""#$%&'()*+,./:;<=>?@[\]^`{|}~%"
strreturn = ""
for i = 1 to len(vstrin)
thischr = mid(vstrin,i,1)
if thischr="%" then
intasc=eval("&h"+mid(vstrin,i+1,2))
if instr(strSpecial,chr(intasc))>0 then
strreturn= strreturn & chr(intasc)
i=i+2
else
intasc=eval("&h"+mid(vstrin,i+1,2)+mid(vstrin,i+4,2))
strreturn= strreturn & chr(intasc)
i=i+5
end if
else
if thischr="+" then
strreturn= strreturn & " "
else
strreturn= strreturn & thischr
end if
end if
next
urldecoding = strreturn
end function
%>
<%=urldecoding(server.urlencode("中草药"))%>
2006-05-29 14:28:00 | [匿名用户:ooer]
#re: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
我再做asp.net的时候用UrlEnCode
来编码要上传的文件名,上传成功了,但在演示下载的时候缺不能下载,而且我查看了文件夹的名字和网页中下载的地址是一样的,为什么下载不了呢?
2006-04-16 20:29:00 | [匿名用户:tman_liu]
#re: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
最终找到了一个好方法

可以把asp 和 php 的中文通过传递到 asp.net 接受。

1. 在asp 中 username=server.urlEncode( server.URLpathencode(“测试”) )
2。在php中 username=urlencode(rawurlencode((“测试”) ));

然后在asp.net 获取并解码的方法是

strUsername = HttpUtility.UrlDecode(this.GetQueryStr("username"), System.Text.Encoding.GetEncoding("gb2312"));

contact my msn if any qestion:
zhaoxianfengdefensi@hotmail.com
2006-03-31 21:12:00 | [匿名用户:zhaoa]
#re: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
In ASP, add

Session.CodePage=65001

Then whole page is processed as UTF-8
2006-03-02 16:05:00 | [匿名用户:Kam]
#re: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
我觉得ASP.NET中的URL编码函数有问题
比如:Server.UrlEncode("*")编码后不变。
2006-01-03 19:11:00 | [匿名用户:SP.net中的Server.UrlEncode]
#re: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
好资料!
2005-08-26 16:34:00 | [匿名用户:飘网中国]
#re: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
楼猪,你发现了外星人啊!!
2005-08-17 13:46:00 | [匿名用户:awenai]
#re: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
ASP中不需要还原,IIS自己会做的!~只是进行编码就行了
2005-08-10 15:24:00 | [匿名用户:blueswind]
#re: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
个人认为没什么特别的.IE5与IE6有类似的问题.

早期MS认为默认编码是本地的, 网络化的趋势使得utf8比较容易处理.所以就成现在这样了
2005-04-26 11:35:00 | [匿名用户:ykj76]
#re: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
2005-04-12 03:48:00 | [匿名用户:看看]
#re: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
test
2005-03-18 11:11:00 | [匿名用户:test]
#re: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
有server.urldecode()吗?我咋试了不管用呢
2005-02-01 15:02:00 | [匿名用户:有server.urldecode()吗?]
#google针对 windows 2000 用户是使用的 utf-8 编码。 编辑
google针对 windows 2000 用户是使用的 utf-8 编码。而百度等等的是 gb2312,我的计数器在接收 google的网址时时乱码,百度则不会,有什么办法解决吗?
我的网站编码也是使用的 gb2312,我试过改成 utf-8后,google是正确了,而百度则又出现了错误。
2005-01-15 10:10:00 | [匿名用户:小林子]
#re: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
用 Server.UrlDecode()来还原 server.URLEncode ()处理的字符啊。
2005-01-15 09:42:00 | [匿名用户:小林子]
#re: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
我也遇到这个问题了,现在的问题是怎么才能统一呢?没有这个asp和asp.net很难交换数据了
2004-08-30 13:33:00 | [匿名用户:zyx]
#re: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
我用ASP该如何编码才能正确?
2004-08-03 11:54:00 | [匿名用户:suiyun]
#re: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
急!

在 asp中 ,用 server.URLEncode 处理过的字符串如何还原?

先谢!
lglwy@163.com
2004-07-25 11:28:00 | [匿名用户:NewGun]
#re: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
用 server.URLEncode 处理过的字符串如何还原
2004-07-25 11:27:00 | [匿名用户:newgun]
#回复: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
谢谢。真有用处。
2004-05-19 12:03:00 | [匿名用户:海盗]
#回复: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
上面Blog中不是写的很清楚???

2004-04-12 09:42:00 | [匿名用户:ghj1976]
#回复: ASP.net中的Server.UrlEncode函数和ASP中的Server.URLEncode函数返回的值竟然不一样!!!! 编辑
asfd
2003-12-17 12:37:00 | [匿名用户:sd]
对不起,目前本随笔不允许发表新评论.

Powered by: Joycode.MVC引擎 0.5.1.8