2012-06-27 12 views
8

Ich bin nur neugierig, dass es moderne Systeme gibt, die auf etwas anderes als UTF-8 voreingestellt sind. Ich habe eine Person blockiert für einen ganzen Tag an den verschiedenen Standorten, dass ein MySQL-System unterschiedliche Codierung haben kann. Sehr frustrierend.Warum ist ALLES nicht UTF-8 standardmäßig?

Gibt es einen guten Grund, utf-8 nicht als Standard zu verwenden (und der Speicherplatz scheint kein guter Grund zu sein)? Nicht versuchen, argwöhnisch zu sein, nur neugierig.

thx

+4

Meistens, weil viele "moderne" Systeme nicht wirklich modern sind (oder zumindest schon eine Weile existieren) und sich daher um Rückwärtskompatibilität sorgen müssen. – Amber

+0

also sage ich nicht "nicht unterstützen" andere Kodierungen, aber es scheint, als ob alles auf utf-8 eingestellt wäre, könnten viele Kopfschmerzen vermieden werden. Ich schätze den Schmerz der Standardeinstellungen (wie im Falle von MySQL), aber ich verstehe es irgendwie nicht. – timpone

+1

Die Standardeinstellungen sind ein * großer * Schmerz. – Amber

Antwort

-1

Einige Kodierungen verschiedene Bytereihenfolgen haben (kleiner und großer Endian)

+1

UTF8 standardisiert die Byte-Reihenfolge ... Wie lautet diese Antwort Die Frage? –

+0

Da einige Systeme möglicherweise nicht die Standard-Byte-Reihenfolge verwenden, müssen Sie möglicherweise eine andere Codierung verwenden, um die Byte-Reihenfolge dieses Systems zu unterstützen. – cmastudios

+0

http://unicode.org/faq/utf_bom.html#bom5 wrt Stückliste in UTF-8: ".. UTF-8 kann eine Stückliste enthalten. Es macht jedoch keinen Unterschied in Bezug auf die Endianess des Byte-Streams." Ein BOM-Argument ist also für UTF-16 gültig, aber UTF-16 ist im Allgemeinen nicht mit ASCII austauschbar. –

6

ist einmal keine Unicode oder UTF-8 und unterschiedliche Kodierungsschemata auf der ganzen Welt gibt es in Gebrauch waren.

Erst 1988 wurde der ursprüngliche Unicode-Vorschlag mit dem Ziel veröffentlicht, alle Weltenzeichen in einer gemeinsamen Kodierung zu kodieren.

Die erste Veröffentlichung im Jahr 1991 umfasste viele Charakterdarstellungen, aber erst 2006 kamen Balinesen, Keilschrift, N'Ko, Phags-pa und Phönizier hinzu.

Bis dahin waren die Phönizier und die anderen nicht in der Lage, ihre Sprache in UTF-8 zu repräsentieren und viele Programmierer zu verärgern, die sich wunderten, warum alles nicht nur UTF-8 war.

+0

1991 war vor 21 Jahren, und bei allem Respekt für die Kulturen, die Sie genannt haben, bezweifle ich, dass diese einen Markt für Computer/Software sind (oder waren oder in absehbarer Zukunft sein werden), um den Umstieg auf eine vernünftigere Weise zu blockieren (für den Rest der Welt) Standard für 20 Jahre. Das ist ein ziemlich schwacher Grund. – delnan

+0

Es braucht Zeit, um zu migrieren, nur weil die erste Veröffentlichung von Unicode im Jahr 1991 nicht bedeutet, dass es sofort übernommen wurde und immer noch nicht vollständig ist, weshalb wir immer noch diese Codierungsprobleme haben. Viele vorhandene Daten befinden sich immer noch in anderen Codierungen als Unicode. – monkut

+0

Dann erkläre das, anstatt über etwas zu wandern, das für die Antwort, die du anscheinend geben wolltest, kaum relevant ist. – delnan

Verwandte Themen