UTF-8 verwendet und alternativen
Unter welchen Umständen würden Sie empfehlen die Verwendung der UTF-8? Gibt es eine alternative zu es dass die dem gleichen Zweck dienen?
UTF-8 verwendet wird für i18n?
- ich Frage mich, warum die Frage, -2?
- Vielleicht wegen der zweiten Frage? "UTF-8 verwendet wird für i18n?". Ist nicht ganz klar, was du damit meinst.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Da Sie getaggt dies mit web-design, ich nehme an, Sie müssen zur Optimierung der code-Größe so klein wie möglich, um Dateien schnell übertragen.
Alternativen zu UTF-8 wäre die andere Unicode-Kodierungen, da es keine alternative zur Verwendung von Unicode (für normale computer-Systeme zumindest).
Wenn man sieht, wie UTF-8 angegeben ist, wirst du sehen, dass alle code points von U+007F erfordert ein Oktett, und die code-Punkte bis U+07FF benötigen zwei Bytes, bis U+FFFF drei und vier Bytes für code Punkte bis U+10FFFF.
Für UTF-16 müssen Sie zwei Oktette bis U+FFFF (meistens), und vier Bytes für Werte bis U+10FFFF.
Für UTF-32, müssen Sie vier Oktette für alle unicode-Punkte.
In anderen Worten, Skripte liegen unter U+07FF haben einige Größe profitieren von der Verwendung von UTF-8 im Vergleich zu UTF-16, während Skripte vor, die haben eine Größe Strafe.
Da jedoch die domain web-design, es mag auch erwähnenswert sein, dass alle steuerzeichen liegen in den ein-Byte-range von UTF-8, wodurch diese weniger wahr für Texte mit vielen, sagen wir, die HTML-markup und Javascript, im Vergleich zu der Menge der tatsächlichen "text".
Skripte unter U+07FF gehören die lateinischen (mit Ausnahme von einigen Erweiterungen, wie tone marks), Griechisch, Kyrillisch, Hebräisch und wahrscheinlich einige mehr. Wikipedia hat ziemlich gute Abdeckung im Unicode-Probleme, und auf der Unicode Consortium kann man sogar noch mehr details.
Da Sie Sie bitten, für Empfehlungen, empfehle ich Ihnen, verwenden Sie es in jedem Fall. Die ganze Zeit, d.h. für HTML-Dateien und Text-Ressourcen. Für Englisch-nur Anwendung, es verändert nichts, aber wenn Sie Sie brauchen, um tatsächlich zu lokalisieren, dass UTF-8 in den ersten Platz wäre ein Vorteil (Sie müssen nicht erneut mit Ihrem code und ändern Sie es; eine Quelle von Mängeln weniger).
Als für andere Unicode-Familie Kodierungen (wie besonders UTF-16), würde ich nicht empfehlen, Sie zu nutzen für die web-Anwendung. Obwohl die Bandbreite könnte tatsächlich höher für z.B. chinesische Zeichen (mindestens drei bytes die ganze Zeit), wirst du keine Probleme mit der übertragung und browser-interpretation (ja, ich weiß, dass es in der Theorie sollten alle die gleiche Arbeit, leider in der Praxis neigt dazu, zu brechen).
UTF-8 alle Weg. Keine Ausreden.
verwenden Sie utf-8 für lateinische Sprachen. utf-16 für jede andere Sprache.