100 votes

Quelle est la différence entre UTF8/UTF16 et Base64 en termes d'encodage

Dans. c#

Nous pouvons utiliser les classes ci-dessous pour effectuer l'encodage :

  • System.Text.Encoding.UTF8
  • System.Text.Encoding.UTF16
  • System.Text.Encoding.ASCII

Pourquoi il n'y a pas de System.Text.Encoding.Base64 ?

Nous ne pouvons utiliser que la Convert.From(To)Base64String , quelle est la particularité de base64 ?

Puis-je dire que base64 est la même méthode d'encodage que UTF-8 ? Ou UTF-8 est l'un des base64 ?

36voto

Mike Axiak Points 6349

Base64 est un moyen d'encoder des données binaires , tandis que UTF8 et UTF16 sont des moyens d'encoder du texte Unicode. Notez que dans un langage comme Python 2.x, où les données binaires et les chaînes sont mélangées, vous pouvez encoder des chaînes en base64 ou utf8 de la même manière :

 u'abc'.encode('utf16')
u'abc'.encode('base64')

Mais dans les langues où il y a une séparation plus bien définie entre les deux types de données, les deux façons de représenter les données ont généralement des utilités assez différentes, pour garder les préoccupations séparées.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X