url编码对照表

附上ASCII字符与URL编码的对照表。
 
ASCII字符   URL编码
空格     %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

原文链接:https://blog.csdn.net/sunhuwh/article/details/41809909

 

转载于:https://www.cnblogs.com/zty1304368100/p/11546618.html

URL编码是一种将特殊字符转换为可安全在网络路径中传输的形式,通常用于处理网页地址、查询字符串等。在C语言中,可以使用标准库函数`encodeURIComponent()`或者手动编写转换过程来实现URL编码。 如果你想要手动实现,可以按照ASCII码表转换非字母数字字符。例如,常见的转义规则有: - `%xx` 表示字符对应的16进制值,如 `%E7%9B%8A` 对应于中文字符“山”(十六进制ASCII值对应于 'e7' 和 '9b' 合并)。 - `%` 后面跟着两个小写字母表示相应字符的Unicode编码(UTF-8),比如 `%F0%9F%98%8A` 对应于表情符号 “😂”。 下面是一个简单的例子,展示了如何手动实现URL编码: ```c #include <stdio.h> #include <string.h> // URL编码函数,使用16进制格式 char* url_encode(const char *str) { static char encoded[512]; // 容量足够大,实际应用中可能需要根据输入长度调整 const unsigned char *p = (const unsigned char *)str; int len = strlen(str); for(int i = 0; i < len; ++i) { if ('a' <= p[i] && p[i] <= 'z') continue; // 空格等常见字符无需编码 else if ('A' <= p[i] && p[i] <= 'Z') continue; else if ('0' <= p[i] && p[i] <= '9') continue; // 查找字符对应的16进制数并追加到结果 encoded[i] = '%'; encoded[i+1] = hex[p[i] >> 4]; encoded[i+2] = hex[p[i] & 0x0f]; i += 2; // 跳过已追加的两位字符 } encoded[len] = '\0'; // 结尾添加空字符 return encoded; } // 字符数组包含16进制转换的对照表 const char hex[] = "0123456789ABCDEF"; int main() { char str[] = "你好 %F0%9F%98%8A!"; char *encoded_str = url_encode(str); printf("原始字符串:%s\n", str); printf("编码后的字符串:%s\n", encoded_str); free(encoded_str); // 不忘记释放内存 return 0; } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值