如何將字符串從文本框轉換爲十六進制?如何在VB.NET中將字符串轉換爲十六進制?
我只在C#中找到方法。 VB.NET有能力做這樣的事情嗎?如果可以,那麼我想知道如何將字符串轉換爲十六進制和十六進制字符串。
如何將字符串從文本框轉換爲十六進制?如何在VB.NET中將字符串轉換爲十六進制?
我只在C#中找到方法。 VB.NET有能力做這樣的事情嗎?如果可以,那麼我想知道如何將字符串轉換爲十六進制和十六進制字符串。
Public Function StrToHex(ByRef Data As String) As String
Dim sVal As String
Dim sHex As String = ""
While Data.Length > 0
sVal = Conversion.Hex(Strings.Asc(Data.Substring(0, 1).ToString()))
Data = Data.Substring(1, Data.Length - 1)
sHex = sHex & sVal
End While
Return sHex
End Function
有沒有一種方法可以在計時器中使用它? –
不正確的十六進制代碼<0x10 – zhangyoufu
要轉換成十六進制,請使用Convert.ToInt32(val, 16)
。 Convert.ToInt32支持有限的鹼基,2,8,10,和16
要轉換成的任何鹼,可使用:
Public Shared Function IntToString(value As Integer, baseChars As Char()) As String
Dim result As String = String.Empty
Dim targetBase As Integer = baseChars.Length
Do
result = baseChars(value Mod targetBase) + result
value = value/targetBase
Loop While value > 0
Return result
End Function
上述功能來自this question。 C#到VB轉換已完成using this。
可以整數容易做轉換爲hexdecimal號:
Convert.ToInt32(15, 16)
並將其轉換回一個整數,你可以這樣做:
Integer.Parse("15f", System.Globalization.NumberStyles.HexNumber)
短,有效表達以十六進制形式顯示字符串s
的所有字符可以使用LINQ寫入:
String.Join(" ", s.Select(Function(c) Conversion.Hex(AscW(c)).PadLeft(4, "0")).ToArray()))
實施例:
對於字符串► fix
它給串25BA 0020 0066 0069 0078
。
享受!
請記住,這是啓用Unicode,爲每個字符返回4位十六進制值,因爲舊的普通非Unicode ASCII是死了,你不應該再依賴於它的任何應用程序。
屢試不爽代碼
創建通過複製此功能將其粘貼。
Function StringToHex(ByVal text As String) As String
Dim hex As String
For i As Integer = 0 To text.Length - 1
hex &= Asc(text.Substring(i, 1)).ToString("x").ToUpper
Next
Return hex
End Function
使用方法如下
Debug.WriteLine(StringToHex("sim0n"))
不正確的十六進制代碼<0x10 – zhangyoufu
你想 'A' 爲INT(10)?和10到十六進制(A)? – corn3lius
@ corn3lius如果int(10)變成十六進制,那麼是的 –