Warum ist die Codepage in der Konsole manchmal ungültig?

5159
Kevin Dong

Umm ... Ich bin etwas wütend auf die Codepages in der Windows (R) Konsole.

Mein Ziel ist es, den Standard-CP ohne Neustart in einen bestimmten CP in der Konsole zu ändern.

Klingt einfach, richtig?

In Win7 kann der Standard-CP in einige CPs geändert werden, andere jedoch nicht.

z.B.

> chcp [ 437 | 850 | 852 | 855 | 857 | 860 | 861 | 863 | 865 | 866 | 869 | 65001 | ... ] > Active code page: nnn 

aber manche können nicht, z.

> chcp [ 932 | 936 | 949 | 950 ] > Invalid code page 

Wenn ich den Standard-CP in einen CP (932, 936, 949, 950) umwandeln möchte, muss ich in die Systemsteuerung wechseln, das Systemgebietsschema ändern und meinen Computer neu starten.

Ist es nicht komisch? Ich bin neugierig auf den Grund. Danke.

3
Ich bin mir ziemlich sicher, dass 932, 936, 949 und 950 IIRC alle implementiert wurden, bevor Windows auf UTF-16 umgestellt wurde. Daher musste die Runtime wahrscheinlich erneut gestartet werden und es sollte nicht nach UTF-16 gesucht werden Bandrami vor 10 Jahren 0
Ich erinnere mich daran, dass es bei der Installation von Win98 eine Option zur Installation zusätzlicher Sprachunterstützung gab. Ich weiß jedoch nie wirklich, was es getan hat. Jetzt glaube ich, dass es kontrollierte, welche Codeseiten unterstützt werden, und hatte daher die Möglichkeit, eine davon zu verwenden. Ich muss das noch bestätigen, aber mehr daran interessiert, zu ihnen zu wechseln, ohne das Systemgebietsschema zu ändern. Adam L. S. vor 10 Jahren 0

1 Antwort auf die Frage

3
ISanych

In Windows 7 konnten Sie die 932-Codepage nur festlegen, wenn für das systemweite Nicht-Unicode-Gebietsschema unter Windows die Einstellung "Japanisch" festgelegt ist (Sie müssen keine zusätzliche Sprachunterstützung installieren, bis Sie Meldungen auf Japanisch wünschen;). Leider müssen Sie Windows neu starten, nachdem Sie das Gebietsschema festgelegt haben. Ich denke, dass dies bei anderen von Ihnen erwähnten Codeseiten der Fall ist. Nach dem Neustart lautet das Standardgebietsschema 932, und Sie werden auch japanische Verzeichnisse als Trennzeichen verwenden:

Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporation. All rights reserved.  C:¥>chcp Active code page: 932  C:¥>chcp 65001 

Nach diesem Befehl neu erstelltes Konsolenfenster:

Active code page: 65001  C:\>