URL encoding ensures that all
browsers will correctly transmit text in URL strings. Characters such as
a question mark (?), ampersand (&), slash mark (/), and spaces
might be truncated or corrupted by some browsers. As a result, these
characters must be encoded in <a> tags or in query strings where the strings can be re-sent by a browser in a request string.
UrlEncode
is a convenient way to access the HttpUtility.UrlEncode method at run time from an ASP.NET application. Internally, UrlEncode uses HttpUtility.UrlEncode to encode strings.
In C# it can be done in one single line
Example: Server.UrlEncode("http://www.xyz.com/my name");
will return http://www.xyz.com/my%20name
Example 2:
String MyURL; MyURL = "http://www.contoso.com/articles.aspx?title=" + Server.UrlEncode("ASP.NET Examples"); Response.Write("<a href=" + MyURL + "> ASP.NET Examples </a>");
URL Encoding Reference |
|
ASCII Character |
URL-encoding |
space
|
20%
|
!
|
21%
|
"
|
22%
|
#
|
23%
|
$
|
24%
|
%
|
25%
|
&
|
26%
|
'
|
27%
|
(
|
28%
|
)
|
29%
|
*
|
%2A
|
+
|
%2B
|
,
|
%2C
|
-
|
%2D
|
.
|
%2E
|
/
|
%2F
|
0
|
30%
|
1
|
31%
|
2
|
32%
|
3
|
33%
|
4
|
34%
|
5
|
35%
|
6
|
36%
|
7
|
37%
|
8
|
38%
|
9
|
39%
|
:
|
%3A
|
;
|
%3B
|
<
|
%3C
|
=
|
%3D
|
>
|
%3E
|
?
|
%3F
|
@
|
40%
|
A
|
41%
|
B
|
42%
|
C
|
43%
|
D
|
44%
|
E
|
45%
|
F
|
46%
|
G
|
47%
|
H
|
48%
|
I
|
49%
|
J
|
%4A
|
K
|
%4B
|
L
|
%4C
|
M
|
%4D
|
N
|
%4E
|
O
|
%4F
|
P
|
50%
|
Q
|
51%
|
R
|
52%
|
S
|
53%
|
T
|
54%
|
U
|
55%
|
V
|
56%
|
W
|
57%
|
X
|
58%
|
Y
|
59%
|
Z
|
%5A
|
[
|
%5B
|
\
|
%5C
|
]
|
%5D
|
^
|
%5E
|
_
|
%5F
|
`
|
60%
|
a
|
61%
|
b
|
62%
|
c
|
63%
|
d
|
64%
|
e
|
65%
|
f
|
66%
|
g
|
67%
|
h
|
68%
|
i
|
69%
|
j
|
%6A
|
k
|
%6B
|
l
|
%6C
|
m
|
%6D
|
n
|
%6E
|
o
|
%6F
|
p
|
70%
|
q
|
71%
|
r
|
72%
|
s
|
73%
|
t
|
74%
|
u
|
75%
|
v
|
76%
|
w
|
77%
|
x
|
78%
|
y
|
79%
|
z
|
%7A
|
{
|
%7B
|
|
|
%7C
|
}
|
%7D
|
~
|
%7E
|
|
%7F
|
€
|
80%
|
|
81%
|
‚
|
82%
|
ƒ
|
83%
|
„
|
84%
|
…
|
85%
|
†
|
86%
|
‡
|
87%
|
ˆ
|
88%
|
‰
|
89%
|
Š
|
%8A
|
‹
|
%8B
|
Œ
|
%8C
|
|
%8D
|
Ž
|
%8E
|
|
%8F
|
|
90%
|
‘
|
91%
|
’
|
92%
|
“
|
93%
|
”
|
94%
|
•
|
95%
|
–
|
96%
|
—
|
97%
|
˜
|
98%
|
™
|
99%
|
š
|
%9A
|
›
|
%9B
|
œ
|
%9C
|
|
%9D
|
ž
|
%9E
|
Ÿ
|
%9F
|
|
%A0
|
¡
|
%A1
|
¢
|
%A2
|
£
|
%A3
|
|
%A4
|
¥
|
%A5
|
|
|
%A6
|
§
|
%A7
|
¨
|
%A8
|
©
|
%A9
|
ª
|
%AA
|
«
|
%AB
|
¬
|
%AC
|
¯
|
%AD
|
®
|
%AE
|
¯
|
%AF
|
°
|
%B0
|
±
|
%B1
|
²
|
%B2
|
³
|
%B3
|
´
|
%B4
|
µ
|
%B5
|
¶
|
%B6
|
·
|
%B7
|
¸
|
%B8
|
¹
|
%B9
|
º
|
%BA
|
»
|
%BB
|
¼
|
%BC
|
½
|
%BD
|
¾
|
%BE
|
¿
|
%BF
|
À
|
%C0
|
Á
|
%C1
|
Â
|
%C2
|
Ã
|
%C3
|
Ä
|
%C4
|
Å
|
%C5
|
Æ
|
%C6
|
Ç
|
%C7
|
È
|
%C8
|
É
|
%C9
|
Ê
|
%CA
|
Ë
|
%CB
|
Ì
|
%CC
|
Í
|
%CD
|
Î
|
%CE
|
Ï
|
%CF
|
Ð
|
%D0
|
Ñ
|
%D1
|
Ò
|
%D2
|
Ó
|
%D3
|
Ô
|
%D4
|
Õ
|
%D5
|
Ö
|
%D6
|
|
%D7
|
Ø
|
%D8
|
Ù
|
%D9
|
Ú
|
%DA
|
Û
|
%DB
|
Ü
|
%DC
|
Ý
|
%DD
|
Þ
|
%DE
|
ß
|
%DF
|
à
|
%E0
|
á
|
%E1
|
â
|
%E2
|
ã
|
%E3
|
ä
|
%E4
|
å
|
%E5
|
æ
|
%E6
|
ç
|
%E7
|
è
|
%E8
|
é
|
%E9
|
ê
|
%EA
|
ë
|
%EB
|
ì
|
%EC
|
í
|
%ED
|
î
|
%EE
|
ï
|
%EF
|
ð
|
%F0
|
ñ
|
%F1
|
ò
|
%F2
|
ó
|
%F3
|
ô
|
%F4
|
õ
|
%F5
|
ö
|
%F6
|
÷
|
%F7
|
ø
|
%F8
|
ù
|
%F9
|
ú
|
%FA
|
û
|
%FB
|
ü
|
%FC
|
ý
|
%FD
|
þ
|
%FE
|
ÿ
|
%FF
|
URL Encoding Reference
The ASCII device control characters -%1f were originally designed to control hardware devices. Control characters have nothing to do inside a URL.
ASCII Character |
Description |
URL-encoding |
NUL
|
null character
|
0%
|
SOH
|
start of header
|
1%
|
STX
|
start of text
|
2%
|
ETX
|
end of text
|
3%
|
EOT
|
end of transmission
|
4%
|
ENQ
|
enquiry
|
5%
|
ACK
|
acknowledge
|
6%
|
BEL
|
bell (ring)
|
7%
|
BS
|
backspace
|
8%
|
HT
|
horizontal tab
|
9%
|
LF
|
line feed
|
%0A
|
VT
|
vertical tab
|
%0B
|
FF
|
form feed
|
%0C
|
CR
|
carriage return
|
%0D
|
SO
|
shift out
|
%0E
|
SI
|
shift in
|
%0F
|
DLE
|
data link escape
|
10%
|
DC1
|
device control 1
|
11%
|
DC2
|
device control 2
|
12%
|
DC3
|
device control 3
|
13%
|
DC4
|
device control 4
|
14%
|
NAK
|
negative acknowledge
|
15%
|
SYN
|
synchronize
|
16%
|
ETB
|
end transmission block
|
17%
|
CAN
|
cancel
|
18%
|
EM
|
end of medium
|
19%
|
SUB
|
substitute
|
%1A
|
ESC
|
escape
|
%1B
|
FS
|
file separator
|
%1C
|
GS
|
group separator
|
%1D
|
RS
|
record separator
|
%1E
|
US
|
unit separator
|
%1F
|
No comments:
Post a Comment