[转]ASP实现关键词获取(各搜索引擎,GB2312及UTF-8)(5)
比如:输入“C2”,转化成“11000010”,其中1100是"c"是10进制的12(1100),那么2(10)不足4位要补齐成(0010)。
dim tempstr
dim i:i=0临时的指针
for i=1 to len(trim(x))
tempstr= c10to2(cint(int("&h" & mid(x,i,1))))
do while len(tempstr)<4
tempstr="0" & tempstr如果不足4位那么补齐4位数
loop
c16to2=c16to2 & tempstr
next
end function
function c2to16(x)
2进制到16进制的转换,每4个0或1转换成一个16进制字母,输入长度当然不可能不是4的倍数了
dim i:i=1临时的指针
for i=1 to len(x) step 4
c2to16=c2to16 & hex(c2to10(mid(x,i,4)))
next
end function
function c2to10(x)
单纯的2进制到10进制的转换,不考虑转16进制所需要的4位前零补齐。
因为这个函数很有用!以后也会用到,做过通讯和硬件的人应该知道。
这里用字符串代表二进制
c2to10=0
if x="0" then exit function如果是0的话直接得0就完事
dim i:i=0临时的指针
for i= 0 to len(x) -1否则利用8421码计算,这个从我最开始学计算机的时候就会,好怀念当初教我们的谢道建老先生啊!
if mid(x,len(x)-i,1)="1" then c2to10=c2to10+2^(i)
next
end function
function c10to2(x)
10进制到2进制的转换
dim sign, result
result = ""
符号
sign = sgn(x)
x = abs(x)
if x = 0 then
c10to2 = 0
exit function
end if
do until x = "0"
result = result & (x mod 2)
x = x \ 2
loop
result = strReverse(result)
if sign = -1 then
c10to2 = "-" & result
else
c10to2 = result
end if
end function
function URLDecode(enStr)
dim deStr,strSpecial
dim c,i,v
deStr=""
strSpecial="!""#$%&()*+,/:;<=>?@[\]^`{ |}~%"
内容版权声明:除非注明,否则皆为本站原创文章。