La guía paso a paso o código que encontrarás en este artículo es la resolución más rápida y válida que hallamos a tu duda o dilema.
Solución:
UTF-8 y UTF-16 son métodos para codificar cadenas Unicode en secuencias de bytes.
Consulte: El mínimo absoluto que todo desarrollador de software debe conocer absoluta y positivamente sobre Unicode y conjuntos de caracteres (¡sin excusas!)
Base64 es un método para codificar una secuencia de bytes a un string.
Por lo tanto, estos son conceptos muy diferentes y no deben confundirse.
Cosas a tener en cuenta:
-
No todas las secuencias de bytes representan un Unicode string codificado en UTF-8 o UTF-16.
-
No todos los Unicode string representa una secuencia de bytes codificada en Base64.
Base64 es una forma de codificar binario datos, mientras que UTF8 y UTF16 son formas de codificar texto Unicode. Tenga en cuenta que en un lenguaje como Python 2.x, donde los datos binarios y las cadenas mixed, puede codificar cadenas en base64 o utf8 de la misma manera:
u'abc'.encode('utf16')
u'abc'.encode('base64')
Pero en lenguajes donde hay una separación más bien definida entre los dos tipos de datos, las dos formas de representar datos generalmente tienen utilidades bastante diferentes, para mantener las preocupaciones separadas.
UTF-8 es como las otras codificaciones UTF, una codificación de caracteres para codificar caracteres del juego de caracteres Unicode UCS.
Base64 es una codificación para representar cualquier secuencia de bytes mediante una secuencia de caracteres imprimibles (es decir, A
–Z
, a
–z
, 0
–9
, +
, y /
).
No hay System.Text.Encoding.Base64 porque Base64 es no a text encoding
sino una conversión básica como el hexadecimal que usa 0
–9
y A
–F
(o a
–f
) para representar números.