在VB.net中将任何字符串转换为十六进制

在VB.net中将任何字符串转换为十六进制,vb.net,hex,Vb.net,Hex,在VB.net中是否有一种方法可以将任何可能的字符串值转换为十六进制 例如,我试过这样做: Convert.ToInt32("hello", 16) 但这会引发一个错误,即“找不到任何可识别的数字” 我希望它返回68656C6F,这是字符串中字符的十六进制表示。您可以获取字符串的字节,然后将每个字节转换为字符串。最简单(但不是最有效)的方法如下: Private Function GetHexString(Source As String) As String Dim b As By

在VB.net中是否有一种方法可以将任何可能的字符串值转换为十六进制

例如,我试过这样做:

 Convert.ToInt32("hello", 16)
但这会引发一个错误,即“找不到任何可识别的数字”


我希望它返回
68656C6F
,这是字符串中字符的十六进制表示。

您可以获取字符串的字节,然后将每个字节转换为字符串。最简单(但不是最有效)的方法如下:

Private Function GetHexString(Source As String) As String
    Dim b As Byte() = System.Text.Encoding.UTF8.GetBytes(Source)
    Return BitConverter.ToString(b).Replace("-", "")
End Function

您希望该功能的结果是什么?此网站返回68656C6F。知道这不是原始问题的一部分,但我如何将结果转换回原始字符串?我是否只需要调用System.Text.Encoding.UTF8.GetString(b)?