网站建设资讯

NEWS

网站建设资讯

包含vb.neturl解码的词条

.net中对URL的解码

要再前台也中想办法,我的解决方案是不用A标记,用js脚本,onclick=window.open()然后用escape()方法URL编码这样传递后 在后台代码中使用Server.UrlDecode()方法 对url进行解码

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名注册网站空间、营销软件、网站建设、拜城网站维护、网站推广。

vb url编码/解码

'编码函数

Public Function URLEncode(ByRef strURL As String) As String 

Dim I As Long 

Dim tempStr As String 

For I = 1 To Len(strURL) 

If Asc(Mid(strURL, I, 1))  0 Then 

tempStr = "%"  Right(CStr(Hex(Asc(Mid(strURL, I, 1)))), 2) 

tempStr = "%"  Left(CStr(Hex(Asc(Mid(strURL, I, 1)))), Len(CStr(Hex(Asc(Mid(strURL, I, 1))))) - 2)  tempStr 

URLEncode = URLEncode  tempStr 

ElseIf

(Asc(Mid(strURL, I, 1)) = 65 And Asc(Mid(strURL, I, 1)) = 90) 

Or (Asc(Mid(strURL, I, 1)) = 97 And Asc(Mid(strURL, I, 1)) = 

122) Then 

URLEncode = URLEncode  Mid(strURL, I, 1) 

Else 

URLEncode = URLEncode  "%"  Hex(Asc(Mid(strURL, I, 1))) 

End If 

Next 

End Function 

'解码函数

Public Function URLDecode(ByRef strURL As String) As String 

Dim I As Long 

If InStr(strURL, "%") = 0 Then URLDecode = strURL: Exit Function 

For I = 1 To Len(strURL) 

If Mid(strURL, I, 1) = "%" Then 

If Val("H"  Mid(strURL, I + 1, 2))  127 Then 

URLDecode = URLDecode  Chr(Val("H"  Mid(strURL, I + 1, 2)  Mid(strURL, I + 4, 2))) 

I = I + 5 

Else 

URLDecode = URLDecode  Chr(Val("H"  Mid(strURL, I + 1, 2))) 

I = I + 2 

End If 

Else 

URLDecode = URLDecode  Mid(strURL, I, 1) 

End If 

Next 

End Function

如何用VB实现URL编码与解码

function URLEncode(nstr)

For i = 1 To Len(nstr)

nmid=Mid(nstr, i, 1)

nasc=Asc(nmid)

if nasc  0 Then

nhex=right("000"  Hex(nasc),4)

URLEncode = URLEncode  "%"  Left(nhex, 2)  "%"  Right(nhex, 2)

elseif nmid=" " then

URLEncode = URLEncode  "+"

Elseif (nasc = 48 And nasc = 57) Or (nasc = 65 And nasc = 90) Or (nasc = 97 And nasc = 122) Then

URLEncode = URLEncode  nmid

Else

URLEncode = URLEncode  "%"  right("0"  Hex(nasc),2)

End if

Next

end function

什么是URL编码和URL解码

因为在程序中无法直接请求一个含有中文的url,所以,我们要对它编码,我们一般会编成gbk,utf-8,但是URL编码和gbk,utf-8编码的区别是,它不会把所有字符都编码,

它只对非字母数字的字符借助utf-8或gbk来编码。

编码时注意 不能把整个url路径传到UrlEncoder的decode方法中,因为它也会把反斜杠/和冒号:也编码,所以域名部分是不需要编码的,取出路径部分 /图片/华仔.jpg

如何将url编码解码...

通过以下两种方式都可以编码和解码

1、

用JS对URL进行编码和解码

JavaScript中有三个可以对字符串编码的函数,分别是:

escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent。

escape()

函数可对字符串进行编码

语法

escape(string)

encodeURI()

函数可把字符串作为

URI

进行编码。

语法

encodeURI(URIstring)

该方法的目的是对

URI

进行完整的编码,因此对以下在

URI

中具有特殊含义的

ASCII

标点符号,encodeURI()

函数是不会进行转义的:;/?:@=+$,#

encodeURIComponent()

函数

encodeURIComponent()

函数可把字符串作为

URI

组件进行编码。

escape()除了

ASCII

字母、数字和特定的符号外,对传进来的字符串全部进行转义编码,因此如果想对URL编码,最好不要使用此方法。而encodeURI()

用于编码整个URI,因为URI中的合法字符都不会被编码转换。encodeURIComponent方法在编码单个URIComponent(指请求参数)应当是最常用的,它可以讲参数中的中文、特殊字符进行转义,而不会影响整个URL。

2、用asp.net

对URL进行编码和解码

用System.Web.HttpUtility.UrlEncode编码:

string

tmp1

=

System.Web.HttpUtility.UrlEncode(".net技术",

System.Text.Encoding.GetEncoding("GB2312"));

string

tmp2

=

System.Web.HttpUtility.UrlEncode(".net技术",

System.Text.Encoding.UTF8);

用System.Web.HttpUtility.UrlDecode

或者

Server.UrlEncode

相应的进行解码

参考资料:

URL如何编码与解码


分享文章:包含vb.neturl解码的词条
URL网址:http://cdweb.net/article/phheej.html