读书人

一个字符串转换的有关问题

发布时间: 2012-05-04 12:36:09 作者: rapoo

一个字符串转换的问题,急!
我有一个字符串,是以字节形式存储的,如:s=”01 01 07 00 01 01 30 02 00 03 60 01 02 03 04 0B 0C“,现在的目的是将字符串以”十六进制显示“,使用Hex函数Hex$(s)报错:类型不匹配!试问我该怎么办?请各位指点一下,谢谢诶!

[解决办法]
首先Hex$肯定不是那样用的,它是用来把整型数据转换成16进制字符串显示的,如
?hex(64)
40

其次你说的也不清楚,你的s本身就就是个“十六进制显示”了吗?
另外相关的函数有两个,参数都可以是“十六进制格式”的字符串,只是返回类型不同:
?str("&H60")
96
?val("&H60")
96


[解决办法]
这不已经是16进制表示的字符串了?
[解决办法]

VB code
Public   Function   StrToHex(ByVal   S   As   String)   As   String         On   Error   Resume   Next         Dim   ByteArr()   As   Byte         ByteArr   =   StrConv(S,   vbFromUnicode)         Dim   Temps   As   String         Dim   Temp   As   Byte         Dim   i   As   Long         Dim   outs   As   String         For   i   =   0   To   UBound(ByteArr)                 Temp   =   ByteArr(i)                 Temps   =   Hex(Temp)                 Temps   =   Right( "00 "   &   Temps,   2)                 outs   =   outs   &   Temps         Next         StrToHex   =   outs End   Function 

读书人网 >VB

热点推荐