Codificar y decodificar una cadena Base64 en C#

Muhammad Maisam Abbas 16 febrero 2024
  1. Codifique una cadena en una cadena Base64 con el método Convert.ToBase64String() en C#
  2. Decodificar una cadena de una cadena Base64 con el método Convert.FromBase64String() en C#
Codificar y decodificar una cadena Base64 en C#

Este tutorial discutirá métodos para codificar y decodificar una cadena base64 en C#.

Codifique una cadena en una cadena Base64 con el método Convert.ToBase64String() en C#

La clase Convert puede convertir un tipo de datos base en otro tipo de datos base en C#. El método Convert.ToBase64String() convierte un array de bytes en una variable de cadena base64 en C#. Para convertir una variable de cadena en una cadena base64, primero debemos convertir esa cadena en un array de bytes. El método Encoding.UTF8.GetBytes() convierte una variable de cadena en un array de bytes en C#. El siguiente ejemplo de código nos muestra cómo podemos codificar una variable de cadena en una cadena base64 con la función Convert.ToBase64String() en 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);
    }
  }
}

Producción :

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

Codificamos la variable de cadena original con el valor This is a string a la cadena base64 base64 con el valor VGhpcyBpcyBhIHN0cmluZw==. Primero convertimos la cadena plainText a el array de bytes plainTextBytes con la función Encoding.UTF8.GetBytes(plainText). Codificamos el array de bytes plainTextBytes en la cadena base64 con la función Convert.ToBase64String(plainTextBytes).

Decodificar una cadena de una cadena Base64 con el método Convert.FromBase64String() en C#

El método Convert.FromBase64String() puede convertir una variable de cadena base64 en un array de bytes en C#. Para convertir una cadena codificada en base64 en una variable de cadena estándar, tenemos que convertir el array de bytes devuelta por el método Convert.FromBase64String() en una variable de cadena utilizando el método Encoding.UTF8.GetString() en C#. El siguiente ejemplo de código nos muestra cómo decodificar una cadena base64 en una variable de cadena con la función Convert.FromBase64String() en 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);
    }
  }
}

Producción :

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

Decodificamos la cadena base64 base64 con el valor VGhpcyBpcyBhIHN0cmluZw== a la variable de cadena original con el valor This is a string. Primero convertimos la cadena base64EncodedData a el array de bytes base64EncodedBytes con la función Convert.FromBase64String(base64EncodedData). Convertimos el array de bytes base64EncodedBytes a la variable de cadena original con la función 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

Artículo relacionado - Csharp String