永久更改CMD中的CodePage?

Lyn*_*Lyn 8 cmd codepages

我的Windows cmd CodePage现在低于65001.由于我正在做一些Android的东西,需要使用控制台日志,但忘了现在如何改变它.

当使用chcp 437更改CodePage时,它可以正常工作.但是,如果我开始一个新的cmd窗口,它会回来.

怎么做chcp的东西使它成为锦标赛?

Moj*_*ian 11

在这里,我找到了一个更好的解

  1. 开始 - >运行 - > regedit
  2. 转到[HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor]
  3. 添加名为:Autorun的新字符串值
  4. 将值更改为"chcp 437"


Wil*_*ord 7

创建一个包含所需命令的启动批处理文件.

然后编辑注册表以指向您的启动文件.

http://technet.microsoft.com/en-us/library/cc779439%28WS.10%29.aspx

C:\ STARTUP.CMD

@echo off
chcp 437
Run Code Online (Sandbox Code Playgroud)

HKLM\SOFTWARE\Microsoft\Command Processor
AUTORUN ="C:\ startup.cmd"


Ist*_*115 7

在 Windows 10 的 1809 版本中,我设法通过转到系统的Language settings,选择Administrative language settings,单击Change system locale...并选中该Beta: Use Unicode UTF-8 for worldwide language support框然后重新启动我的电脑来永久解决此问题。

这样它就适用于所有应用程序,即使是那些我不是从命令提示符启动的应用程序!(这对我来说是必要的,因为我试图从 Atom 编辑 Agda 代码。)

  • 对于现代 Windows 版本来说,这是正确且最佳的选择。 (2认同)

小智 6

如果您只是在 cmd 中使用 chcp 850 来更改活动语言代码(850 = 多语言(拉丁语 I)),则命令提示符代码页始终更改回默认的 437。尽管我是巴西人(语言代码 850),但我的系统默认语言设置为英语 (437)。一旦我需要显示一些特殊字符,例如 ã、õ、ç,我发现在 Windows 10 中,在所有设置 > 时间和语言 > 区域和语言下,(在右上角)有一个相关设置的链接- 附加日期、时间和区域设置。从那里您将被重定向到Control Panel\Clock, Language, and Region。再次单击Region > Change Location,然后在 Region 窗口中,在选项卡 Administrative 中,更改通过单击按钮更改系统区域设置并选择其他使用您需要的代码的非 Unicode 程序语言在我的情况下,葡萄牙语(巴西)= 代码 850)。重新启动Windows 并检查您的命令提示符现在是否设置为新的语言代码(在 cmd 中键入 chcp)。对我来说,它解决了这个问题。列表中还有一个拉丁语 (Word) 选项,我想也是代码 850。


小智 6

可以使用以下命令巧妙地设置默认的 CMD/shell 代码页:

REG ADD HKCU\Console\%SystemRoot^%_system32_cmd.exe /v CodePage /t REG_DWORD /d 437
Run Code Online (Sandbox Code Playgroud)

这将使代码页 437 成为您的默认值,但仅在 cmd/shell 中,这意味着操作系统的其余部分是安全的,并且引导环境未受影响。cmd 将从一开始就以指定的代码页打开,而不是每次打开 cmd 时都更改代码页。

如果您希望使用 regedit.exe 手动编辑它,请注意您必须将代码页值设置为“十进制”(使用单选按钮选择十进制或十六进制输入)。