QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-9 14:33 |只看该作者 |正序浏览
|招呼Ta 关注Ta
作者: Atomic ( ckatom@hotmail.com) 0 ?3 U9 k  s2 `; o* t# s# Q
QQ:5538313
' e" @% b  u) @: t, b* @日期: 18/04/2002 / v5 N) K( f1 F( d( g

; {2 C2 k# q4 O
4 q* F& J: J+ l' d) ]刚刚拜读了Stamina的“URL编码及C语言实现”,觉得有必要写一个GUI的转换器,于是我就操起VB来 完成了这个作品.
- O: P# f' q! t; P& }其实原理很简单,但是我做GUI界面用了些时间,下面是主要的转换部分: 8 O3 ?; s( z3 H( u  t0 S  a
0 V. b4 Z" C/ J. A; ]( C
''encode - 转成16进制符
( D  D0 g) q; v) ^. T3 L! E9 f! C) U) Z) c0 x6 Z
For i = 1 To Len(strIN) + K- P% \" k* c5 Z, ?" L
s = CStr(Hex(Asc(Mid(strIN, i, 1)))) ''是不是太~~~快了~~
  z! J7 j  g. b' r9 ^' bIf Len(s) = 1 Then s = "0" & s ''解出小于F的值就在前面加 0
  h1 G2 N+ I! S/ h) L% VstrOUT = strOUT & "%" & s   V% _4 o5 b- K0 R% V* N: D
Next i 2 {* X, N; ^1 Q0 h
4 n( L; P1 S0 D8 F3 j0 l
txtOUT.Text = strOUT ''这里就是输出了
; r& D0 N1 U( z* f8 X___________________________________________________________ ' `, j1 s+ W3 |8 I4 V

% P7 L8 h- g: N+ v1 V''decode - 解码, 比较麻烦点 $ R6 u  D# ^& r+ P: C

+ U) R7 N' J9 G( YFor i = 1 To Len(strIN) Step 3 '' Step 3 因为格式是 %XX 三位一个字符 ; ^6 W1 w# b' n& \1 }* T, H: K
s1 = UCase(Mid(strIN, i + 1, 1)) ''得到第2位的16进制数字 1 ]7 v1 Z9 a' v' j3 ?6 J
s2 = UCase(Mid(strIN, i + 2, 1)) ''得到第1位的16进制数字 6 o0 ~8 T1 y7 h4 l4 }

& K0 o# o: [) D, e- ~Select Case s1 '' 进制转换
# P9 ]3 U8 y, |, r% XCase "A" To "F" ( u6 ~6 ?8 x# W8 q! G+ L2 R5 A
n = (10 + 5 - (Asc("F") - Asc(s1))) * 16 - |/ N. z9 a3 N( L: c
Case Else
6 m* ^  ?) T/ en = Val(s1) * 16 $ v/ M1 _. q# D1 Y# \
End Select
. i- m3 z6 b& \( \. z
/ A1 k" P: n# Y# Q0 ]5 L) S: U0 z, mSelect Case s2
* w' N; g" C, w/ U/ RCase "A" To "F" 5 M8 ?7 f8 ~3 M: b
n = n + (10 + 5 - (Asc("F") - Asc(s2))) . `: _1 _6 G7 v* K# z
Case Else 9 m4 G/ h2 L! g  D2 i- G. s
n = n + Val(s2)
) i2 v7 \6 ~7 n  p# W' q% z8 m7 ?, GEnd Select 1 t3 o' d- W& I6 h- Q' b8 {8 E
+ G. ]2 a7 G3 Y7 k  d
s = ChrW$(n) '' 转为字符
. ?5 j! |* R# P. a  YstrOUT = strOUT & s . [5 R8 ]  k. G7 m8 ^6 Z
Next i . f+ q' y- E6 `9 {4 X9 {
txtOUT.Text = strOUT
& l0 a# f% a( q5 i' ^/ o9 ^! ]" N! U
7 j. E& ?% p( i/ L. [, l0 K  Y
程序下载: http://apower.uhome.net/download/encoder.zip
0 I8 n- H4 Q+ X/ M# `+ Dhttp://members.rogers.com/tdl/encoder.zip.  + f: u9 a0 ^# _3 o
  1. <SCRIPT language=javascript src="../scripts/recommend.js">, G/ X\" H% ]% u
  2. 6 D; ^: l9 X6 O
  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-27 06:43 , Processed in 0.361367 second(s), 52 queries .

回顶部