如何在VB.NET中将ASCII转换为十六进制?

时间:2014-08-05 00:09:18

标签: vb.net hex

我想制作一个程序,在VB.NET中将ASCII字符串转换为十六进制。

这就是我所说的:

有一个包含两个文本框和一个按钮的表单。用户在textbox1中输入ASCII,在点击按钮后,textbox2以十六进制显示。

因此在文本框1上输入ASCII:test

按下按钮1后,在textbox2中以十六进制输出:74657374

有办法做到这一点吗?

2 个答案:

答案 0 :(得分:1)

字符串转换为十六进制值

的代码
Dim str As String = "test"
Dim byteArray() As Byte
Dim hexNumbers As System.Text.StringBuilder = New System.Text.StringBuilder
byteArray = System.Text.ASCIIEncoding.ASCII.GetBytes(str)
For i As Integer = 0 To byteArray.Length - 1
    hexNumbers.Append(byteArray(i).ToString("x"))
Next
MsgBox(hexNumbers.ToString()) ' Out  put will be 74657374

以下代码将反转操作并验证输出:

Dim st As String = hexNumbers.ToString
Dim com As String = ""
For x = 0 To st.Length - 1 Step 2
    com &= ChrW(CInt("&H" & st.Substring(x, 2)))
Next
MsgBox(com)

答案 1 :(得分:0)

textbox2.Text = ""
For Each c As Char In textbox1.Text
    textbox2.Text &= Convert.ToString(Convert.ToInt32(c), 16)
Next