string 类型的数据
13 08 97 51 21 1B 8E
这个是一组十六进制数现在要实现如下数据分配
sbuf(0)=&H13
sbuf(1)=&H8
sbuf(2)=&H97
sbuf(3)=&H51
sbuf(4)=&H21
sbuf(5)=&H1B
sbuf(6)=&H8E
应该怎么做?这个只是说明我需要数据的规则,我有很多的数据都要这样来实现数据的分配请你们给出思路或者代码 在线等
13 08 97 51 21 1B 8E
这个是一组十六进制数现在要实现如下数据分配
sbuf(0)=&H13
sbuf(1)=&H8
sbuf(2)=&H97
sbuf(3)=&H51
sbuf(4)=&H21
sbuf(5)=&H1B
sbuf(6)=&H8E
应该怎么做?这个只是说明我需要数据的规则,我有很多的数据都要这样来实现数据的分配请你们给出思路或者代码 在线等
直接定义一个数组存放不就可以了?
Dim strArry() As String
Dim iCnt As Integer
strBuf = "13 08 97 51 21 1B 8E"
strArry = Split(strBuf, " ")
For iCnt = 0 To UBound(strArry)
strArry(iCnt) = "&H" & strArry(iCnt)
Debug.Print strArry(iCnt)
Next iCnt '*************
&H13
&H08
&H97
&H51
&H21
&H1B
&H8E
'*************不知道数不是LZ希望的~~
怎么两位的分
13089751211B8E 还是这样的一组数据
需要的结果还是那样的结果
&H13
&H08
&H97
&H51
&H21
&H1B
&H8E
这个应该怎么办?怎么写代码
dim n as long
dim i as long
dim b() as byte
dim t as strings = "13089751211B8E"
n = len(s)
if n mod 2 = 0 then
redim b(n / 2 - 1)
else
redim b(n / 2)
end if
for i = 0 to ubound(b)
t = mid(s,2*i+1,2)
b(i) = CByte(Val("&H" & t))
next
Dim strF As String
Dim strArr() As String
Dim lngI As Long
strF = "13089751211B8E"
ReDim strArr(Len(strF) / 2 - 1)
For lngI = 0 To Len(strF) - 1 Step 2
strArr(lngI / 2) = "&H" & Mid(strF, lngI + 1, 2)
Debug.Print strArr(lngI / 2)
Next
End Sub
redim b(n / 2 - 1)
else
redim b(n / 2)
s = "0" & s
end if 若在后面补零,if n mod 2 = 0 then
redim b(n / 2 - 1)
else
redim b(n / 2)
s = s & "0"
end if
Dim strIni As String
Dim sBuf() As String
Dim I As Integer
strIni = "13 08 97 51 21 1B 8E"
sBuf = Split(strIni, " ")
For I = LBound(sBuf) To UBound(sBuf)
Debug.Print "sBuf(" & CStr(I) & ")= " & sBuf(I)
Next I
End Sub
Private Sub Form_Load()
Dim iStr As String, sbuf() As Byte
Dim i As Integer, strlen As Integer
iStr = "13089751211B8E"
strlen = Len(iStr) \ 2
ReDim sbuf(strlen)
For i = 1 To strlen
sbuf(i - 1) = "&H" & Mid(iStr, i * 2 - 1, 2)
Debug.Print sbuf(i - 1), Format(Hex(sbuf(i - 1)), "00")
Next i
End Sub
Private Sub Form_Load()
Dim iStr As String, sbuf() As Byte
Dim i As Integer, strlen As Integer
iStr = "13089751211B8E"
strlen = Len(iStr) \ 2
ReDim sbuf(strlen - 1)'''''''''''''
For i = 1 To strlen
sbuf(i - 1) = "&H" & Mid(iStr, i * 2 - 1, 2)
Debug.Print sbuf(i - 1), Format(Hex(sbuf(i - 1)), "00")
Next i
End Sub