vb问题!请教编程高手
来源:百度知道 编辑:UC知道 时间:2024/05/22 01:39:56
怎么实现从文本框输入数字!就是ip!转换成ASCII码!
如192.168.1.1转成31 39 32 2E 31 36 38 2E 31 2E 31
一共最多有4组3位数,如111.222.111.222,后面不足的补00
怎么实现啊!
高手帮忙!
本人新手!此题百思不得其解
如192.168.1.1转成31 39 32 2E 31 36 38 2E 31 2E 31
一共最多有4组3位数,如111.222.111.222,后面不足的补00
怎么实现啊!
高手帮忙!
本人新手!此题百思不得其解
先用MID函数对需转换的IP地址字符串逐一取出到一维数组,然后用ASC函数取单字符的ASCII码值,再用HEX对其转换为16进制数,代码如下:
Dim bl(15) as String
Dim i as Byte
Dim dz as String
dz = Text1
For i = 1 to LEN(DZ)
bl(i) = HEX(ASC(Mid(dz,i,1)))
'此处插入16进制仅为1字长的补零代码,因为16进制是2字长
Next i
对于IP地址长度补0问题,可在前用LEN函数判断长度补单字长0,也可在后用同样方法判别字长补双00.
以上供参考.
经VB6.0调试代码如下:
Private Sub Command1_Click()
Dim bl(15) As String
Dim i As Byte
Dim dz As String
Dim dz1 As String
Dim l As Byte
dz = Text1
l = Len(dz)
For i = l + 1 To 15
dz = dz & "0"
Next
For i = 1 To 15
bl(i) = Right("0" & Hex(Asc(Mid(dz, i, 1))), 2)
dz1 = dz1 & bl(i)
Next i
Text2 = dz1
End Sub