UTF8 als Standardzeichencodierung in Windows 7 festlegen

Gibt es eine Möglichkeit, Windows 7 so einzustellen, dass UTF-8 standardmäßig global verwendet wird?
es ist wirklich ärgerlich, jeden einzelnen Texteditor so einzustellen, dass er ihn verwendet.

Author: studiohack, 2011-01-31

2 answers

Die kurze Antwort ist nein, es ist nicht möglich.

Um es näher zu erläutern, fürchte ich, dass Sie in Windows 7 keine globale Codierungsoption finden, mit der Sie beide 1) einen globalen Standard festlegen können, dem 2) alle von Ihnen aufgelisteten Anwendungen gehorchen würden.

Außerdem möchte ich fragen, was ist das Problem hier, das Sie zu lösen versuchen?

Es liegt an der Anwendung zu entscheiden, ob sie Unicode intern zur Darstellung von Daten verwendet. , Während die Verwendung von unicode ist, in sind Sie möglicherweise nie sicher, ob alle Ihre Anwendungen dies tatsächlich unterstützen.

Was Sie tun können, ist jedoch Ändern Sie die Standardzeichencodierung für jede der aufgelisteten Anwendungen:

  • Für Eclipse kann die Standardcodierung für neue Dateien von Windows > Einstellungen > Allgemein > Inhaltstypen festgelegt werden (siehe Beitrag zu Eclipse Community Forms)
  • Navigieren Sie für Notepad++ zu Einstellungen > Einstellungen > Neu Document / Default / Directory und setzen Sie Encoding auf UTF-8
  • Was Thunderbird betrifft, bin ich mir ziemlich sicher, dass UTF-8 bereits als Standardcodierung verwendet wird. (siehe diese Hinweise zur Zeichencodierung)
  • Im Fall von OpenOffice (und LibreOffice) brauchen Sie sich eigentlich gar nicht um die Codierung zu kümmern, da Dokumente, die von OpenOffice gespeichert werden, auf XML basieren, in dem die Codierung intern in den XML-Dateien angegeben ist (und UTF-8 ist dort bereits der Standardwert sowie)
  • Aus UTF-8-Sicht ist PowerShell schwierig. Es hat die Standardcodierung von UTF-16LE.
 48
Author: jsalonen,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-05-23 12:41:47

Dies ist hauptsächlich deshalb nicht möglich, weil Windows UTF-8 nicht als ANSI-Codepage des Systems zulässt, obwohl es eine ANSI-Codepage für UTF-8, Codepage 65001. Es scheint mehrere Gründe dafür zu geben:

  • Als Unicode neu war, entschied Microsoft, dass UCS-2 der beste Weg wäre, Unicode zu unterstützen. Zu dieser Zeit war Unicode 16-Bit.
  • Windows hat eine ANSI-Codepage für jede unterstützte Sprache, im Gegensatz zu Unix und Linux, wo die Sprache und Codierung sein kann unabhängig einstellen.
  • Codepage 65001 funktioniert nicht überall. Insbesondere ist es mit einigen der MultiByte-Unterstützung in Windows gebrochen, die erwarten, dass Multibyte-Zeichen ein oder zwei Bytes erfordern, während UTF-8 zwischen einem und vier Bytes erfordert. Die WriteFile() API gibt beispielsweise ein falsches Ergebnis unter codepage 65001 zurück, das den gesamten darauf basierenden Bibliothekscode durchbläst, z write().

Der verstorbene Michael Kaplan, der an Internationalisierung bei Microsoft hatte einen blog, "Sorting it all Out" - , mit mehreren posts auf Verwandte Themen. Ich mailte ihm direkt über einige dieser Bedenken zurück in den Tag.

 24
Author: hippietrail,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2016-12-30 17:49:38