Comment décoder une chaîne de texte d'un tableau Base64 à un tableau d'octets, et obtenir la propriété string de ce tableau d'octets sans corruption de données
Ok, donc j'ai une chaîne de texte encodé en Base 64 comme ci-dessous:
string myText = "abcBASE64TEXTGOESHEREdef=="; //actual string is 381 characters long with trailing '=='
Je puis convertir ma chaîne à partir de la Base de 64 à un tableau d'octets comme suit:
byte[] decodedFromBase64 = Convert.FromBase64String(myText);
À ce point, je veux obtenir la chaîne de valeur de ce tableau d'octets et de l'enregistrer dans un fichier texte sans perte de données ou la corruption. Le code ci-dessous ne semble pas être le faire:
string myDecodedText = Encoding.ASCII.GetString(decodedFromBase64);
StreamWriter myStreamWriter = new StreamWriter("C:\\OpenSSL-Win32\\bin\\textToDecrypt.txt");
myStreamWriter.Write(myString);
myStreamWriter.Flush();
myStreamWriter.Close();
Quelqu'un peut-il me dire où je vais mal.
Edit: La sortie est illisible, j'ai besoin de prendre l'décodé chaîne, puis d'utiliser OpenSSL pour le décrypter. La Sortie et le résultat d'OpenSSL sont à la fois ci-dessous:
source d'informationauteur JMK | 2011-12-27
Vous devez vous connecter pour publier un commentaire.
Si la chaîne est codé alors que le contenu se ressemblent beaucoup à ce que vous avez dans votre fichier texte. Mais pour s'assurer que le fichier n'est pas corrompu, vous devez écrire le contenu du fichier binaire au lieu d'utiliser un encodeur de texte. Découvrez Fichier.WriteAllBytes().