HOWTO · Csharp

Convierta una imagen en una cadena Base64 en C#

Este artículo explica cómo convertir una imagen en una cadena base64 en C#.

Este artículo ilustrará cómo convertir una imagen en una cadena base64 usando C#.

La codificación en base64 es una técnica que se usa a menudo cuando existe la necesidad de transformar datos binarios en una representación textual. Numerosas aplicaciones, como enviar un correo electrónico mediante MIME y almacenar datos complicados en XML, utilizan con frecuencia el estándar de codificación base64.

Convertir una imagen a cadena Base64 en C#

En primer lugar, importe las bibliotecas para acceder a las clases y funciones del programa.

using System;

Cree una clase ImagetoBase64 y cree un método Main() dentro de esta clase.

class ImagetoBase64 {
  public static void Main() {}
}

Dentro de la función Main(), crea una variable imageArray de tipo matriz de bytes denotada como byte[] que convierte la imagen seleccionada en una matriz de bytes utilizando la función ReadAllBytes().

byte[] imageArray = System.IO.File.ReadAllBytes("E://image.jpg");

Cree una nueva variable llamada base64Image del tipo cadena. Esta variable convertirá los bytes de la imagen a base64 utilizando la función de la clase Convert ToBase64String()..

Esta función toma una parte de una matriz de enteros sin signo de 8 bits y genera una representación de cadena que se codifica con dígitos de base 64.

Los parámetros permiten al usuario definir el subconjunto como un desplazamiento dentro de la matriz de entrada y la cantidad de elementos de la matriz que se convertirán. También permite determinar si los saltos de línea deben incluirse o no en el resultado devuelto.

string base64Image = Convert.ToBase64String(imageArray);

Al final, todo lo que queda por hacer es mostrar la imagen una vez que se haya transformado en texto base64.

Console.WriteLine("Base 64 string\n\n" + base64Image);

Código fuente completo:

using System;

class ImagetoBase64 {
  public static void Main() {
    byte[] imageArray = System.IO.File.ReadAllBytes("E://image.jpg");
    string base64Image = Convert.ToBase64String(imageArray);

    Console.WriteLine("Base 64 string\n\n" + base64Image);
  }
}

Dado que la base64 es bastante larga, insertemos algunos ... para aclarar que continúa así.

Producción :

/9j/4AAQSkZJRgABAQEASABIAAD/4gxYSUNDX1BST0ZJTEUAAQEAAAxITGlubwIQAABtbnRyUkdCIFhZWiAHzgACAAkABgAxAABhY3NwTVNGVAAAAABJRUMgc1JHQgAAAAAAAAAAAAAAAAAA9tYAAQAAAADTLUhQICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFjcHJ0AAABUAAAADNkZXNjAAABhAAAAGx3dHB0AAAB8AAAABRia3B0AAACBAAAABRyWFlaAAACGAAAABRnWFlaAAACLAAAABRiWFlaAAACQAAAABRkbW5kAAACVAAAAHBkbWRkAAACxAAAAIh2dWVkAAADTAAAAIZ2aWV3AAAD1AAAACRsdW1pAAAD......