Adresse originale : cliquez pour ouvrir le lien
J'ai vu un article de blog sur la page d'accueil de Yuanzi aujourd'hui - une brève discussion sur Unicode et UTF-8, dont j'ai appris que UTF-8 fait partie de la méthode d'implémentation d'Unicode One :
Unicode spécifie uniquement un nombre binaire unifié pour chaque caractère du monde et ne précise pas comment le programme doit le stocker et l'analyser.
On peut dire que UTF-8 est l'une des méthodes d'implémentation Unicode...
Lors de l'enregistrement de cette récolte dans la mémoire flash, @飞鸟_Asuka en a mentionné une bonne dans la réponse Question : "Alors pourquoi Unicode et utf8 sont-ils deux options distinctes lors du choix de la méthode d'encodage ?"
En C#, System.Text.Encoding.Unicode et System.Text.Encoding.UTF8 sont respectivement 2. méthodes d'encodage. Si UTF-8 est une méthode d’implémentation d’Unicode, alors pourquoi Encoding.Unicode est-il utilisé comme méthode de codage en parallèle avec UTF8 en C# ?
Plus tard, j'ai trouvé la réponse sur stackoverflow :
Il s'avère que l'implémentation Unicode par défaut dans Windows est UTF-16, donc Encoding.Unicode en C# est UTF-16. Le commentaire de System.Text.Encoding.Unicode le prouve également :Windows gère les chaînes dites "Unicode" comme des chaînes UTF-16, alors que la plupart des UNIX utilisent par défaut UTF-8 de nos jours. 🎜>
// // Summary: // Gets an encoding for the UTF-16 format using the little endian byte order. // // Returns: // An encoding for the UTF-16 format using the little endian byte order.public static Encoding Unicode { get; }