在網上找了很多方法好像轉換的都不對
取到的用戶名為 246871239068AF8203154B76A26F7CD9 這樣的32位16進制 想轉換為正常的用戶名 應該是漢字吧
謝謝 希望提供合適的代碼
另外說一下 這個代碼轉換出來為亂碼不知道什么原因 可能是編碼方式不同吧
Function HexToStr(x)
For i=1 to Len(x) Step 4
HexToStr = HexToStr & Chrw("&H" & Mid(X,i,4))
Next
End Function
uj5u.com熱心網友回復:
你怎么肯定可以轉換。用戶名怎么碰巧是32位的?
再說你只有一個編碼,起碼你要多給一些,以及它們對應的用戶名是什么才好判斷。
uj5u.com熱心網友回復:
多半經過加密了的。uj5u.com熱心網友回復:
每個用戶名都是32位的不是碰巧 有可能真是加密了uj5u.com熱心網友回復:
246871239068AF8203154B76A26F7CD9 不叫 32 位吧?應該是 16 位元組,或 128 位。uj5u.com熱心網友回復:
很可能是加密了的uj5u.com熱心網友回復:
試試這樣行不行
Public Function StrToHex(ByVal s As String) As String
On Error Resume Next
Dim ByteArr() As Byte
Dim Temps As String
Dim i As Long
ByteArr = StrConv(s, vbFromUnicode)
For i = 0 To UBound(ByteArr)
Temps = Hex(ByteArr(i))
Temps = right("00" & Temps, 2)
StrToHex = StrToHex & Temps
Next
End Function
Public Function HexToStr(ByVal HexStr As String) As String
Dim vArr() As Byte, i As Long
Dim vLen As Long
vLen = Len(HexStr) \ 2
ReDim vArr(vLen - 1)
For i = 0 To vLen - 1
vArr(i) = Val("&H" & Mid$(HexStr, i * 2 + 1, 2))
Next
HexToStr = StrConv(vArr, vbUnicode)
End Function
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/108052.html
標籤:VB基礎類
上一篇:關于亂數種子的問題
