本人无比喜欢看相声小品,刚刚找到一个网站:中国文艺家俱乐部http://www.chinawyj.com/Index.asp
是个不错的地方,进入下载区,发现只有会员才能下载,于是注册,成功下载一个小品,之后就发现,会员只有50个点,而每个小品下载少则50,多则200~300……
想获得更多的点,那就只有交钱了吧……
突然我发现迅雷搜到的文件地址有点眼熟:http://www.chinawyj.com/UploadSoft/%B7%EB%B9%AE&%B9%F9%B6%AC%C1%D9-%BE%C9%C7%FA%D0%C2%B8%E8.rar
经分析发现,这就是小品的表演者与名称的16进制组合,编程获得字符串的编码(byte()),取16进制(Hex()),再加上连接符(&,-)就可以了……
代码如下:
Dim person As String = txtPerson.Text
Dim filename As String = txtName.Text
Dim resultStr As String = "http://www.chinawyj.com/UploadSoft/"
Dim persons(), name() As Byte
persons = System.Text.Encoding.Default.GetBytes(person)
name = System.Text.Encoding.Default.GetBytes(filename)
Dim m As Integer
For m = 0 To persons.Length - 1
resultStr &= "%" & Hex(persons(m))
Next
resultStr &= "-" '表演与作品名之间用"-"连接
For m = 0 To name.Length - 1
resultStr &= "%" & Hex(name(m))
Next
resultStr = resultStr.Replace("%5C", "&") '有多个表演者时我用的"\"作为分隔,而"\"的Hex符号为"5C",将其换成"&"
resultStr &= ".rar"
txtURL.Text = resultStr
txtURL.Focus()
txtURL.SelectAll()
为方便,将txtURL的内容全选,可以直接按 Ctrl+C,这时如果你有迅雷5监视内存的话,就可以直接跳出一个下载对话框了……