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
怎么实现啊!

高手帮忙!
本人新手!此题百思不得其解

先用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