Was sind die Standardcodierungen in heutigen Betriebssystemen?

1

Was sind die Standardkodierungen in Mac, Unix und anderen?

Ich weiß, dass wenn mein Freund, der Windows verwendet, mir eine Datei sendet, diese höchstwahrscheinlich in codiert wird cp1251. Also rein emacs, ich kann machen: revert-buffer-coding-systemund werde wählen cp1251.

Adobe
quelle

Antworten:

7

Es gibt keine „ die Standard - Codierung“, haben Sie viele von ihnen.

UTF-8 , eine Unicode-Codierung, wird heutzutage am häufigsten verwendet. Dies ist die Standardeinstellung für die meisten Linux-Distributionen sowie für viele E-Mail-Clients auf anderen Plattformen. Unter Windows bezieht sich "Unicode" normalerweise auf UTF-16, eine weitere Darstellung desselben Unicodes.

Andere Codierungen werden aufgrund ihrer Einschränkungen und der Unfähigkeit, mehrere Sprachen in derselben Datei zu verwenden, langsam nicht mehr verwendet.

  • Der "Standard" von ihnen wären die ISO 8859- Kodierungen, hauptsächlich ISO 8859-1 für "Westeuropa".

  • Ihre Windows-Gegenstücke sind sehr ähnlich. Am gebräuchlichsten ist Windows-1252, auch bekannt als cp1252 , eine Obermenge von ISO 8859-1 . (Ihre cp1251 ist für kyrillische Schrift.)

  • Andere Kodierungen wie KOI8-R und Shift-JIS werden ebenfalls verwendet.

Siehe auch eine Liste der Zeichenkodierungen .

Ein Python-Skript namens chardet kann die für bestimmte Dateien verwendete Kodierung genau erraten.

Grawity
quelle
1
UTF-8 ist die Standardeinstellung auf OSX
Mark
@grawity: Es sieht so aus, als hätte chardet keine CLI-Schnittstelle. Ist das wahr?
Adobe
@Adobe: Richtig, aber die Verwendung im chardetinteraktiven Python-Modus ist einfach. import chardet; data = open("myfile").read(); print chardet.detect(data)
Grawity
@grawity: Danke - mit Ihrer Lösung habe ich es zu einem Python-Skript gemacht - jetzt hat es eine CLI-Oberfläche. Ich habe das Skript hier gestellt . Nun - nochmals danke - es ist so schön, die Kodierung automatisch herauszufinden.
Adobe