Heim  >  Artikel  >  Backend-Entwicklung  >  Der Unterschied zwischen Encoding.Unicode und Encoding.UTF8 in C#

Der Unterschied zwischen Encoding.Unicode und Encoding.UTF8 in C#

黄舟
黄舟Original
2017-02-13 11:44:122055Durchsuche

Ursprüngliche Adresse: Klicken Sie hier, um den Link zu öffnen

Ich habe heute einen Blog-Beitrag auf der Homepage von Yuanzi gesehen – ein kurzes Gespräch über Unicode und UTF-8, aus dem ich das gelernt habe UTF-8 ist Teil der Unicode One-Implementierungsmethode:

Unicode gibt nur eine einheitliche Binärzahl für jedes Zeichen auf der Welt an und gibt nicht an, wie das Programm sie speichern und analysieren soll.

Man kann sagen, dass UTF-8 eine der Unicode-Implementierungsmethoden ist...

Bei der Aufzeichnung dieser Ernte im Flash-Speicher erwähnte @飞鸟_Asuka eine gute die Antwortfrage: „Warum sind Unicode und utf8 zwei separate Optionen bei der Auswahl der Kodierungsmethode?“

In C# gibt es jeweils zwei Optionen für System.Text.Encoding.Unicode und System.Text.Encoding.UTF8 Kodierungsmethoden. Wenn UTF-8 eine Implementierungsmethode von Unicode ist, warum wird dann Encoding.Unicode parallel zu UTF8 in C# als Codierungsmethode verwendet?

Später habe ich die Antwort auf stackoverflow gefunden:

Windows verarbeitet sogenannte „Unicode“-Zeichenfolgen als UTF-16-Zeichenfolgen, während die meisten UNIX-Geräte heutzutage standardmäßig UTF-8 verwenden

Es stellt sich heraus, dass die Standard-Unicode-Implementierung in Windows UTF-16 ist, also ist Encoding.Unicode in C# UTF-16.

Der Kommentar von System.Text.Encoding.Unicode beweist dies auch:


Der Unterschied zwischen Encoding.Unicode und Encoding.UTF8 in C#

//
// 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; }

Der Unterschied zwischen Encoding.Unicode und Encoding.UTF8 in C#

In C# ist Encoding.Unicode = UTF-16.

Das Obige ist der Unterschied zwischen Encoding.Unicode und Encoding.UTF8 in C#. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn