上QQ阅读APP看书,第一时间看更新
2.2.5 十六进制字符串转换为二进制数据
在某些应用场合,我们可能拥有数据的十六进制形式的字符串,如何将它转换回真正的数据呢?还是使用ChrB函数。
看一下范例。
hexString2binary.asp
<% Dim hexStr, bstr '数据的十六进制字符串表示形式 hexStr = "47494638396112001200B30D00800000C0C0C0FFFF0E8080008080809A3434FB"&_ "FBFBFF0A0A303030FF0000FFFF00FFFFFF000000FFFFFF00000000000021F904"&_ "0100000D002C000000001200120000046DB0C949ABA528E75B33FB1BD7644BC0"&_ "94E1859CDF02725E799A29F6310371338855AC0C8550082A540E89C427774B1C"&_ "3A88A4740A487914000035E00A691409807041266B243D0436115094CD238C60"&_ "3C260B7A16F5D0BD50E08F070C040284020603074F80898A0D8C8D222211003B" '循环,每两个字符对应一个字节数据 For i=1 To Len(hexStr) Step 2 byteHex = Mid(hexStr, i,2) '如开始的47 byteNumber = "&H" & byteHex '用&H47转换为数字 byteStr = ChrB(byteNumber) '转换类型为字符串 '拼接数据 bstr = bstr & byteStr Next
'指定数据类型为Gif Response.ContentType="image/gif" '输出二进制数据 Response.BinaryWrite bstr %>
运行结果如图2-9所示。
此例提供了一种比较有趣的思路,我们可以把一些二进制文件,如图片、文档、压缩包或可执行文件等,以文本文件的形式保存起来,需要使用的时候,再反过来恢复即可。
图2-9 十六进制字符串数据转换为二进制数据
如何将二进制数据转换为十六进制形式的字符串,相信大家都知道怎么做了,不赘述。