QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 1933|回复: 0
打印 上一主题 下一主题

利用URL编码进行加密 [源码]

[复制链接]
字体大小: 正常 放大
韩冰        

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-9 14:33 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
作者: Atomic ( ckatom@hotmail.com)   _/ c. M# k6 k8 O
QQ:5538313 ' `6 J$ E8 J. X
日期: 18/04/2002 & a/ R# ?& c' v
& o1 a' ^& f4 F0 A& L

  a+ q2 @. J! A- \: V# W. J刚刚拜读了Stamina的“URL编码及C语言实现”,觉得有必要写一个GUI的转换器,于是我就操起VB来 完成了这个作品. : z5 `' Z# s% x
其实原理很简单,但是我做GUI界面用了些时间,下面是主要的转换部分: ( P0 j; u/ U6 r& L9 a, T  P
' c4 ~- B  b% X, p, @: A' r0 }
''encode - 转成16进制符
) h7 I! s4 e+ J! B4 v
- N0 f2 L2 l% s/ aFor i = 1 To Len(strIN) % A5 B& {' O  e- L0 ^
s = CStr(Hex(Asc(Mid(strIN, i, 1)))) ''是不是太~~~快了~~
0 ~- ^2 p2 A* l5 q' k: aIf Len(s) = 1 Then s = "0" & s ''解出小于F的值就在前面加 0 " `- \% ]: I5 n( q
strOUT = strOUT & "%" & s * k; c. a# d' m/ ^5 B( R$ o# ]
Next i
0 Z, K; T& g3 s  B' e
; u% D/ Z; m6 X/ }+ ^txtOUT.Text = strOUT ''这里就是输出了 ) \. a& Q$ w+ |: H4 w' _
___________________________________________________________
1 Y3 R3 X4 D, m$ y& O3 u# }/ E& k4 G9 Z7 _* i2 U, d& X
''decode - 解码, 比较麻烦点 : ^$ u+ h) S8 O0 x

* w: y1 X2 z4 R0 _3 O9 BFor i = 1 To Len(strIN) Step 3 '' Step 3 因为格式是 %XX 三位一个字符
: h7 r" R8 P! |$ `1 {s1 = UCase(Mid(strIN, i + 1, 1)) ''得到第2位的16进制数字 % y% n, H5 M+ h7 Z" G; A
s2 = UCase(Mid(strIN, i + 2, 1)) ''得到第1位的16进制数字
" q# x( K- c+ Q4 r% W5 R4 [! k5 _! q( s( l. Q3 F. G1 G
Select Case s1 '' 进制转换
3 a( c, {. ?# `, XCase "A" To "F"
. l+ r) u+ }/ v" l+ Y; q9 ?n = (10 + 5 - (Asc("F") - Asc(s1))) * 16 8 D& b" k7 ^7 G! t' K  D* t% D8 L
Case Else
0 A0 y+ b; Y: n. I+ En = Val(s1) * 16 9 H8 c* r' N# c2 Q
End Select / `1 a: [; g3 [0 c/ J! |0 D

) O  F6 d' t! {7 N  V: |Select Case s2 " \7 S: ?# ]- I0 _- a' ^' D' g3 \
Case "A" To "F"
- k( `7 w  C4 v& {1 en = n + (10 + 5 - (Asc("F") - Asc(s2)))
. f0 L; t5 ]9 CCase Else 1 f7 b7 A/ e* T% C' f$ c& I; Q
n = n + Val(s2) . @$ }9 z  i* t7 J# }! `, p
End Select # V& I0 k/ ^8 j+ U3 Z5 \4 ^
$ d% _3 I5 b. X
s = ChrW$(n) '' 转为字符 * y8 P8 D4 r- m2 l& T- K4 k% @
strOUT = strOUT & s 7 |( }9 ]5 c# I0 K# U
Next i
8 k1 J$ ^  F4 htxtOUT.Text = strOUT - v! l& j/ b/ c+ ^" C; v- h6 a& ]
6 W( d& v  l/ H6 \, O
* |7 R( P: U+ [* b* Y0 a/ h/ i
程序下载: http://apower.uhome.net/download/encoder.zip / P5 ]5 }0 h$ |/ ^
http://members.rogers.com/tdl/encoder.zip.  # S- y  V4 i4 U! e! e/ _
  1. <SCRIPT language=javascript src="../scripts/recommend.js">4 z. r8 T0 g0 ~& R* r7 d

  2. ! v6 K% n! F9 Y
  3. <script>
复制代码
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-6-10 23:35 , Processed in 0.371333 second(s), 51 queries .

回顶部