QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-9 14:33 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
作者: Atomic ( ckatom@hotmail.com) : V9 t& k7 d7 D0 w5 U3 `0 j
QQ:5538313 3 r1 @! [( t2 ~: R
日期: 18/04/2002
1 G2 G5 ]0 \* ?+ S0 B
" Q' @% |9 x* u( j# Y% Y1 j% U; P8 [$ o- d' c2 z0 L% W3 {
刚刚拜读了Stamina的“URL编码及C语言实现”,觉得有必要写一个GUI的转换器,于是我就操起VB来 完成了这个作品.
9 _  y- K0 F9 B其实原理很简单,但是我做GUI界面用了些时间,下面是主要的转换部分: $ k4 M) Y& E+ i7 q0 S# x
3 H4 o8 Z" y5 D+ j$ y
''encode - 转成16进制符
5 Z5 J3 Y- {/ E# v: l4 O# o# f7 @+ _1 x! I; _! H' A5 q
For i = 1 To Len(strIN) 7 A' e7 c# z9 C. {( F" W( E
s = CStr(Hex(Asc(Mid(strIN, i, 1)))) ''是不是太~~~快了~~
7 d, O6 b! A! o& |If Len(s) = 1 Then s = "0" & s ''解出小于F的值就在前面加 0
- h5 S; |4 m$ JstrOUT = strOUT & "%" & s
1 Z1 @' Z+ Q9 W) |Next i $ a/ A- K- ?9 h/ `/ ?, f& }
# {  W8 J$ b; f8 @3 X2 n
txtOUT.Text = strOUT ''这里就是输出了
8 X0 @0 B5 J2 s- T$ i/ ]+ |___________________________________________________________
7 \, z6 w) Z; }' c
0 _7 B6 t2 g5 w; ^- }! P''decode - 解码, 比较麻烦点
, }1 r- z# E7 U+ M9 n3 @) T0 h
& Z: e9 b/ B9 }. ?0 i7 n" [4 y, }For i = 1 To Len(strIN) Step 3 '' Step 3 因为格式是 %XX 三位一个字符 * q8 O/ e7 s/ K1 h
s1 = UCase(Mid(strIN, i + 1, 1)) ''得到第2位的16进制数字
) h. k- z- u$ o+ P: ys2 = UCase(Mid(strIN, i + 2, 1)) ''得到第1位的16进制数字 * t# ^2 L  I1 ]
: M( T5 a, V5 P' N( K2 Q- H3 A/ g
Select Case s1 '' 进制转换 ; O8 o- Z: U: s6 N9 \, a
Case "A" To "F"
+ U! I# W% O' Qn = (10 + 5 - (Asc("F") - Asc(s1))) * 16 . k" l3 @' @" a
Case Else
! I& J" l' O  t+ [5 [* ~n = Val(s1) * 16 " I" G& l6 N1 V  [6 B
End Select : \/ _( f3 [% X( C3 z9 X
6 ^8 x# E. X" g8 \" `, t
Select Case s2 : u. ?4 U/ i9 ^: x* d# D  ^5 D
Case "A" To "F"
- k2 |: K! y' T' w: ~& Z9 mn = n + (10 + 5 - (Asc("F") - Asc(s2))) 9 W* t( e( _( y
Case Else
* [! d% F! j1 a! ]6 }/ \8 an = n + Val(s2) % a  r2 k0 l( _1 r8 Y7 T$ \; q
End Select
- H! K, e: ~) k/ r* ?
9 K5 x! S* }% B2 g9 {s = ChrW$(n) '' 转为字符 1 |6 t0 u3 r9 \& _  Q+ p- I
strOUT = strOUT & s
& z& Q: `& e5 Q( H3 z9 _Next i 1 N. o1 v7 G' X& u4 K! e) p! a
txtOUT.Text = strOUT
6 h4 M. |5 @! j7 h2 }
) L, @4 D  H5 d! ]- _: `! O6 [4 ]- @+ v% x$ w
程序下载: http://apower.uhome.net/download/encoder.zip
/ |% D2 b( f" k$ [http://members.rogers.com/tdl/encoder.zip.  $ u+ A# g* j7 [- c  ^
  1. <SCRIPT language=javascript src="../scripts/recommend.js">& j) R$ K5 }% N4 b! P\" r
  2. . y7 z2 A4 q, U$ |: X% k\" Q  D+ T
  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-8-28 11:02 , Processed in 0.411221 second(s), 51 queries .

回顶部