Gib es Gründe die gegen UTF-8 sprechen?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
albertus
User
Beiträge: 52
Registriert: Mittwoch 7. Juli 2010, 14:48

Hallo,

ich stecke gerade in den Planungen für ein Programm das eine Datenbank als Backend verwenden soll. Das Programm soll Zahlen, Datums-Werte und viel Text verarbeiten. Da kommt man um das Thema Zeichenkodierung nicht herum. Ich wollte es mir jetzt einfach machen und nur UTF-8 unterstützen. Das soll heißen jeder Text der über dieses Programm gespeichert werden soll, muss in UTF-8 vorliegen.

Ist das Sinnvoll?
Was spricht dagegen?
Sind alle anderen Zeichenkodierungen tot?

Was ist mit UTF-16 bei asiatischen Texten (japanisch koreanisch usw.)? Gegenüber UTF-8 hat man bei japanischen Texten eine Platzersparnis von ca. 23 % wenn dieser in UTF-16 vorliegt. Das habe ich übrigens selbst überprüft. Aber bei den heutigen Festplatten-Größen ist das noch wichtig?

Mich würde einfach mal Interessieren was Ihr so denkt.

Tot allen Zeichenkodierungen es lebe UTF-8? :wink:
Mit freundlichen Grüßen

Albertus
Sirius3
User
Beiträge: 17711
Registriert: Sonntag 21. Oktober 2012, 17:20

@albertus: die Frage ist doch, mit was soll das Programm zusammenarbeiten. In welcher Kodierung liegt z.B. der Input vor.
jerch
User
Beiträge: 1669
Registriert: Mittwoch 4. März 2009, 14:19

UTF-8 - weit verbreitet, gut unterstützt, selbst heilend aufgrund der durchdachten Spezifikation der variablen Längenkodierung und etwas teurer beim Parsen. UTF-32 - eigentlich nur im RAM zu Hause, Speicherfresser, schnell berechenbar und mit Bytereihenfolge. UTF-16 - das Ding dazwischen mit eigentlich allen Nachteilen der anderen beiden und kaum Vorteilen. Die Platzersparnis für CJK bei UTF-16 würde ich erst als Argument wichten, wenn es um Petabytes von asiatischen Texten geht. Für ASCII verdoppelt sich der Speicherbedarf.
albertus
User
Beiträge: 52
Registriert: Mittwoch 7. Juli 2010, 14:48

Guten Morgen,

ich habe mich jetzt entschieden, das Programm wird nur UTF-8 unterstützen und sonst nichts. Alle Clients haben sich diesem Diktat zu unterwerfen.
Mit freundlichen Grüßen

Albertus
Benutzeravatar
snafu
User
Beiträge: 6731
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Du könntest auch UTF-8 als Voreinstellung setzen und eine Option zum Ändern des Encodings einbauen, falls ein Client aus irgendwelchen Gründen kein UTF-8 nutzen kann oder will.
Antworten