1

次のエラーが表示されます: タイプ「文字列」の値は「文字列の 1 次元配列」に変換できません

テキストを md5hash に変換するときに、replace 関数を使用して - を空のスペースに置き換えようとすると。

これは私のコードです:

    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 に答える