1

我收到此错误:“字符串”类型的值无法转换为“字符串的一维数组”

当我尝试使用替换功能替换 - 将文本转换为 md5hash 时使用空格。

这是我的代码:

    Public Shared Function GetMD5Hash(ByVal TextToHash As String) As String
    If TextToHash = "" Or TextToHash.Length = 0 Then
        Return String.Empty
    End If

    Dim md5 As MD5 = New MD5CryptoServiceProvider()
    Dim toHash As Byte() = Encoding.Default.GetBytes(TextToHash)
    Dim result As Byte() = md5.ComputeHash(toHash)

    Return System.BitConverter.ToString(result)
End Function


Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.Click

    Dim tempPassToken As String() = GetMD5Hash(TextBox2.Text).Replace("-", "")
    Dim passMD5 As String = ""

    For i = 0 To tempPassToken.Length - 1
        passMD5 = passMD5 & tempPassToken(i)
    Next
4

1 回答 1

1

更改此行:

Dim tempPassToken As String() = GetMD5Hash(TextBox2.Text).Replace("-", "")

对此:

Dim tempPassToken As String = GetMD5Hash(TextBox2.Text).Replace("-", "") 

使用括号告诉系统您正在定义一个字符串数组,而不是单个字符串。而且,正如错误所暗示的,您不能将字符串分配给数组。

于 2013-04-07T21:43:05.973 回答