Codifica e decodifica una stringa Base64 in C#

Muhammad Maisam Abbas 12 ottobre 2023
  1. Codifica una stringa in una stringa Base64 con il metodo Convert.ToBase64String() in C#
  2. Decodificare una stringa da una stringa Base64 con il metodo Convert.FromBase64String() in C#
Codifica e decodifica una stringa Base64 in C#

Questa esercitazione discuterà i metodi per codificare e decodificare una stringa base64 in C#.

Codifica una stringa in una stringa Base64 con il metodo Convert.ToBase64String() in C#

La classe Convert può convertire un tipo di dati di base in un altro tipo di dati di base in C#. Il metodo Convert.ToBase64String() converte un array di byte in una variabile stringa base64 in C#. Per convertire una variabile stringa in una stringa base64, dobbiamo prima convertire quella stringa in un array di byte. Il metodo Encoding.UTF8.GetBytes() converte una variabile stringa in un array di byte in C#. Il seguente esempio di codice ci mostra come possiamo codificare una variabile stringa in una stringa base64 con la funzione Convert.ToBase64String() in C#.

using System;
using System.Text;

namespace encode_and_decode_base64_string {
  class Program {
    public static string Base64Encode(string plainText) {
      var plainTextBytes = Encoding.UTF8.GetBytes(plainText);
      return System.Convert.ToBase64String(plainTextBytes);
    }
    static void Main(string[] args) {
      string original = "This is a string";
      Console.WriteLine("Original String = " + original);
      string base64 = Base64Encode(original);
      Console.WriteLine("Encoded String = " + base64);
    }
  }
}

Produzione:

Original String = This is a string Encoded String = VGhpcyBpcyBhIHN0cmluZw ==

Abbiamo codificato la variabile stringa original con il valore This is a string alla stringa base64 base64 con il valore VGhpcyBpcyBhIHN0cmluZw==. Abbiamo prima convertito la stringa plainText nell’array di byte plainTextBytes con la funzione Encoding.UTF8.GetBytes(plainText). Abbiamo codificato l’array di byte plainTextBytes nella stringa base64 con la funzione Convert.ToBase64String(plainTextBytes).

Decodificare una stringa da una stringa Base64 con il metodo Convert.FromBase64String() in C#

Il metodo Convert.FromBase64String() può convertire una variabile stringa base64 in un array di byte in C#. Per convertire una stringa codificata in base64 in una variabile di stringa standard, dobbiamo convertire l’array di byte restituito dal metodo Convert.FromBase64String() in una variabile di stringa usando il metodo Encoding.UTF8.GetString() in C#. Il seguente esempio di codice ci mostra come decodificare una stringa base64 in una variabile stringa con la funzione Convert.FromBase64String() in C#.

using System;
using System.Text;

namespace encode_and_decode_base64_string {
  class Program {
    public static string Base64Decode(string base64EncodedData) {
      var base64EncodedBytes = System.Convert.FromBase64String(base64EncodedData);
      return System.Text.Encoding.UTF8.GetString(base64EncodedBytes);
    }
    static void Main(string[] args) {
      string base64 = "VGhpcyBpcyBhIHN0cmluZw==";
      Console.WriteLine("Encoded String = " + base64);
      string original = Base64Decode(base64);
      Console.WriteLine("Decoded String = " + original);
    }
  }
}

Produzione:

Encoded String = VGhpcyBpcyBhIHN0cmluZw == Decoded String = This is a string

Abbiamo decodificato la stringa base64 base64 con il valore VGhpcyBpcyBhIHN0cmluZw== alla variabile stringa original con il valore This is a string. Abbiamo prima convertito la stringa base64EncodedData nell’array di byte base64EncodedBytes con la funzione Convert.FromBase64String(base64EncodedData). Abbiamo convertito l’array di byte base64EncodedBytes nella variabile stringa original con la funzione Encoding.UTF8.GetString(base64EncodedBytes).

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Articolo correlato - Csharp String