刚刚拜读了Stamina的“URL编码及C语言实现”,觉得有必要写一个GUI的转换器,于是我就操起VB来 完成了这个作品. 其实原理很简单,但是我做GUI界面用了些时间,下面是主要的转换部分: ’’encode - 转成16进制符 For i = 1 To Len(strIN) s = CStr(Hex(Asc(Mid(strIN, i, 1)))) ’’是不是太~~~快了~~ If Len(s) = 1 Then s = "0" & s ’’解出小于F的值就在前面加 0 strOUT = strOUT & "%" & s Next i txtOUT.Text = strOUT ’’这里就是输出了 ___________________________________________________________ ’’decode - 解码, 比较麻烦点 For i = 1 To Len(strIN) Step 3 ’’ Step 3 因为格式是 %XX 三位一个字符 s1 = UCase(Mid(strIN, i 1, 1)) ’’得到第2位的16进制数字 s2 = UCase(Mid(strIN, i 2, 1)) ’’得到第1位的16进制数字 Select Case s1 ’’ 进制转换 Case "A" To "F" n = (10 5 - (Asc("F") - Asc(s1))) * 16 Case Else n = Val(s1) * 16 End Select Select Case s2 Case "A" To "F" n = n (10 5 - (Asc("F") - Asc(s2))) Case Else n = n Val(s2) End Select s = ChrW $(n) ’’ 转为字符 strOUT = strOUT & s Next i txtOUT.Text = strOUT 程序下载: http://apower.uhome.net/download/encoder.zip http://members.rogers.com/tdl/encoder.zip.