Problème avec un tableau ascii
Bonjour,
J'ai une chaine de caractère que je reçois en "String" mais qui correspond à un tableau de Bytes convertis en chaine.
Je reçois donc cette chaine que je reconverti d'abord en tableau de bytes, puis je dois la traduire en une chaine de caractères normale (décoder l'ascii en string).
Mon code pour décoder ne fonctionne pas.
j'ai testé, mon tableau de Bytes est bien ok et contient bien ce qu'il faut, mais quand je décode de Byte vers string, j'obtient rien du tout.
Pourtant mon code semble bon.
Pouvez-vous m'aider s'il vous plait ?
Voici mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
Public ws_key_encoded_string As String = ""
Public ws_key_decoded_string As String = ""
Protected Function Encode_Key(ByVal var1 As String, ByVal var2 As String) As Boolean
ws_key_encoded_string = ""
Dim BoolOk As Boolean = False
Dim ascii As New ASCIIEncoding()
Try
If var1 <> "" And var2 <> "" Then
Dim unicodeString As String = var1 & "-" & var2
Dim array() As Byte = ascii.GetBytes(unicodeString)
Dim b As Byte
For Each b In array
ws_key_encoded_string = ws_key_encoded_string & b.ToString()
Next b
BoolOk = True
Else
errtxt = "Les paramètres d'encodages de la clé ne sont pas valides ! Opération annulée."
End If
Catch ex As Exception
errtxt = ex.ToString()
End Try
Return BoolOk
End Function
Protected Function Decode_Key(ByVal ws_key As String) As Boolean
ws_key_decoded_string = ""
Dim BoolOk As Boolean = False
Dim ascii As New ASCIIEncoding()
Dim lenKey As Integer = Len(Trim(ws_key))
Try
Dim encoded_Bytes(lenKey - 1) As Byte
Dim c As String
Dim b As Byte
For i As Integer = 1 To (lenKey)
c = Mid(ws_key, i, 1)
b = CByte(CInt(c))
encoded_Bytes(i - 1) = b
Next
ws_key_decoded_string = ascii.GetString(encoded_Bytes)
BoolOk = True
Catch ex As Exception
errtxt = ex.ToString()
End Try
Return BoolOk
End Function |