在windows的cmd中如何设置支持utf8编码?

lclc lclc     2022-08-03     707

关键词:

 

技术分享   这个问题很多人开始都会不知道,当然包括曾经的我,当用到的时候,只好求助于伟大的股沟和度娘了。网上有设置的方法,但说明确不够详细系统,说设置字体 为:Lucida Console。问题是,在默认方式下,只有点阵字体,哪有什么Lucida Console。所以,在自己成功设置后,拿出来和大家分享下过程,下面就让我们找出Lucida Console来设置吧。

   这里需要先了解些内容:

CHCP是MS DOS中的命令,用来显示或设置活动代码页编号的。用法是:

CHCP [nnn]

其中nnn指定的是代码页的编号。这个参数是可选的,在命令行下如果不指定这个代码页编号,那么默认是显示当前的代码页编号。比如,在默认的cmd窗口中,我们输入chcp,显示的将类似:

活动的代码页: 936

 这里的936表示当前使用的是简体中文(GB2312)编码。

 

UTF8

你也需要了解编码的一些知识,为了完成支持的工作,你至少需要知道UTF8代码页的编号:65001。更多关于编码的内容,这里不赘述,请自行查找相关内容。

 

有这两个知识点,接下来,让cmd支持UTF8就变得容易了。

1. 运行CMD;

2. 输入 CHCP,回车查看当前的编码;

3. 输入CHCP 65001,回车;

4. 仅如此,还是不能支持UTF8的正常显示,你还要在窗体上右键,选择属性,来设置字体;

5. 操作完上面几步后,即使你原来的字体里面没有显示Lucida Console这个字体,现在应该也能看到了。选择它。如果原来就有,可以选上它先试试,不行在执行上述步骤(这里补充:至少我本机需要CHCP 65001下,有朋友说不要);

6. 选择只应用到本窗体,确认。

这时候,你的Console里面,应该支持UTF8了。

有些朋友也想知道如何在显示更多的字体,这个其实也是有办法的,只要在注册表(路径:HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionConsoleTrueTypeFont)中添加就好了。需要注意的是,添加的字体需要是定宽的(fixed-width)。操作示意图:

技术分享

 

技术分享

上图来自这里(英文)。需要的可以直接访问。

 

更改cmd代码页,修正中文显示

  • 发布时间: 2013/02/13 13:37
  • 阅读: 10604
  • 收藏: 1
  • 点赞: 1
  • 评论: 0

执行以下相应的命令:

rem 英文
chcp 437

rem 日文
chcp 932

rem 简体中文
chcp 936

rem 韩文
chcp 949

rem 繁体中文
chcp 950

rem utf-8
chcp 65001

如果cmd的默认代码页属性修改不了,那么修改注册表:

1 win键+R打开“运行”对话框,输入regedit打开注册表编辑器。

2 找到 [HKEY_CURRENT_USERConsole\%SystemRoot%_system32_cmd.exe]

3 修改"CodePage"=dword:000003a8

【注】十六进制"000003a8"或十进制"936",表示“936 (ANSI/OEM - 简体中文 GBK)”。 

    如果代码页改成65001之后,仍无法正常显示UTF-8字符,则需要改变字体属性:在命令行标题栏上点击右键,选择"属性"->"字体",将字体修改为True Type字体"Lucida Console",然后点击确定将属性应用到当前窗口。
    通过以上操作并不能完全解决问题,因为显示出来的内容有可能不完全。可以先最小化,然后最大化命令行窗口,文件的内容就完整的显示出来了。

----------------------------------------------------------------------------------------------------------------

 

附: chcp详解

功能说明 
显示活动控制台代码页数量,或更改该控制台的活动控制台代码页。如果在没有参数的情况下使用,则 chcp 显示活动控制台代码页的数量。

补充说明 
只 有随 XOX 一起安装的原始设备制造商 (OEM) 代码页才能在使用 Raster 字体的命令提示符窗口中正常显示。其他代码页则可在全屏幕模式下或者在使用 TrueType 字体的命令提示符窗口中正确显示。 就像在 MS-DOS 中一样,您不必准备代码页。 在指派了新代码页之后启动的程序将使用该新代码页,但如果程序(除了 Cmd.exe)是在指派新代码页之前启动的,那么该程序将使用原来的代码页。

语法 
chcp [NNN] 

参数 
NNN 指定代码页。下表列出了MSDOS所有支持的代码页及其国家(地区)或者语言:
代码页     国家(地区)或语言
437          美国
850          多语言(拉丁文 I)
852          斯拉夫语(拉丁文 II)
855          西里尔文(俄语)
857          土耳其语
860          葡萄牙语
861          冰岛语
863          加拿大 - 法语
865          日耳曼语
866          俄语
869           现代希腊语 
936           简体中文
950           繁体中文
65001       UTF-8

/? 在命令提示符下显示帮助。

示例 
要查看活动代码页设置,请键入:

chcp

出现类似于下面内容的消息:
活动代码页:437

如果要将活动代码页更改为 850(多语言),请键入:

chcp 850

如果指定的代码页无效,则会显示以下错误消息:

无效代码页

windows下cmd命令行显示utf8字符设置(chcp命令)

在中文windows系统中,如果一个文本文件是utf-8编码的,那么在cmd.exe命令行窗口(所谓的dos窗口)中不能正确显示文件中的内容。在默认情况下,命令行窗口中使用的代码页是中文或者美国的,即编码是中文字符集或者西文字符... 查看详情

windows下cmd命令行显示utf8字符设置(chcp命令)(代码片段)

在中文windows系统中,如果一个文本文件是utf-8编码的,那么在cmd.exe命令行窗口(所谓的dos窗口)中不能正确显示文件中的内容。在默认情况下,命令行窗口中使用的代码页是中文或者美国的,即编码是中... 查看详情

在windows中,如何使用cmd命令行窗口正确显示编码为utf-8格式的文字

在windows中,如何使用cmd命令行窗口正确显示编码为utf-8格式的文字呢?正确的步骤如下:1,打开cmd命令行窗口2,输入命令>chcp65001数字65001代表的是cmd窗口中utf-8格式的编码。cmd窗口默认编码为gbk,数字代码为936D:>chcp65001Activ... 查看详情

windows下cmd命令行显示utf8字符设置(chcp命令)(代码片段)

在中文windows系统中,如果一个文本文件是utf-8编码的,那么在cmd.exe命令行窗口(所谓的dos窗口)中不能正确显示文件中的内容。在默认情况下,命令行窗口中使用的代码页是中文或者美国的,即编码是中... 查看详情

window修改cmd编码

  Window默认编码是gbk,对一些字符不支持。需在不同语言上切换,急需要调整字符集编码。。chcp功能:显示或设置活动代码页编号  chcp[nnn] #nnn指定的代码页编号  chcp   #不加参数键入CHCP显示当前活动代码页... 查看详情

如何在mysql中存取utf8mb4编码的字符

参考技术A  utf8编码可以支持一到4字节的字符编码,在mysql用我们一般使用utf8编码来处理字符类型,通常情况下都没有问题,但遇到4字节编码的字符,在数据存取的时候就会有问题了。  通常我们可能会得到一个错误或者... 查看详情

[windows]设置系统默认编码格式为utf8

参考技术A新建文件夹,输入WindowsRegistryEditorVersion5.00[HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe]"CodePage"=dword:0000fde9"FontFamily"=dword:00000036"FontWeight"=dword:00000190"FaceName"="Consolas""ScreenBuff... 查看详情

cmd命令设置utf8

...些检测和验证这是由于cmd命令窗口的编码格式问题,需要设置为UTF-8格式,设置方式为:cmd窗口执行命令CHCP65001  查看详情

如何在mysql中存取utf8mb4编码的字符?

参考技术Autf8编码可以支持一到4字节的字符编码,在mysql用我们一般使用utf8编码来处理字符类型,通常情况下都没有问题,但遇到4字节编码的字符,在数据存取的时候就会有问题了。\\x0d\\x0a通常我们可能会得到一个错误或者警... 查看详情

如何设置mysql表的某字段编码为utf8?急!

参考技术A就是你在建表的时候,在字段后面,追加设置为utf8。Mysql要解决中文乱码,最好是你把数据库的默认编码都改掉,我一般这样处理:在mysql安装目录下的my.ini文件中做如下修改:[mysql]下面修改default-character-set=utf8[mysqld]... 查看详情

在 Windows 中使用 vCard 进行 UTF8 编码

】在Windows中使用vCard进行UTF8编码【英文标题】:UTF8EncodingwithvCardsinWindows【发布时间】:2012-01-2621:29:07【问题描述】:我在一个网站上实现了一个vCard。问题是特殊字符在windows上没有被正确解析。我可以让它在Mac上正常工作,但... 查看详情

mysql设置默认编码集为utf8怎么设置

...ysql编码。  1、编辑MySql的配置文件  MySql的配置文件Windows下一般在系统目录下或者在MySql的安装目录下名字叫my.ini,可以搜索,Linux下一般是/etc/my.cnf    --在[mysqld]标签下加上以下内容:  default-character-set=utf8  chara... 查看详情

如何对mysql中的字符进行编码转换

参考技术Autf8编码可以支持一到4字节的字符编码,在mysql用我们一般使用utf8编码来处理字符类型,通常情况下都没有问题,但遇到4字节编码的字符,在数据存取的时候就会有问题了。  通常我们可能会得到一个错误或者警告... 查看详情

如何使cmd窗口正确显示utf-8编码的文字

在windows中,如何使用cmd命令行窗口正确显示编码为utf-8格式的文字呢? 正确的步骤如下:1,打开cmd命令行窗口2,输入命令>chcp65001  数字65001代表的是cmd窗口中utf-8格式的编码。cmd窗口默认编码为gbk,数字代码为936  D:... 查看详情

c++如何通过utf8字符串编码的文件名,在windows上打开一个文件(代码片段)

办不到!!!windows只接受8bit的ANSI或者UTF16编码的文件名,你可以在代码里面使用utf8编码的文件名,但是当你打开文件时,你必须将其转化为8bit的ANSI或者UTF16编码的文件名。幸运的是,VC++的std::ifstream跟std::ofstream对标准做了扩展,... 查看详情

如何在cmd中设置cmd windows图标-windows 7

】如何在cmd中设置cmdwindows图标-windows7【英文标题】:Howtosetcmdwindow\'siconincmd-windows7【发布时间】:2019-07-1221:41:53【问题描述】:如何使用.bat文件设置cmd窗口的图标(如果没有办法从设置或任何东西设置它对我有好处),但只有wi... 查看详情

mysqlsql怎么设置编码

...如果没有配置好cmd里面的mysql环境变量,那就在系统高级设置那儿进行MySQL的环境变量设置。win+R,调出“运行”,输入cmd,回车登录数据库,查看数据库查看数据库字符编码通过MySQL命令行修改:(编码可选)mysql>setcharacter_set_cli... 查看详情

如何在 Windows 中为 npm 运行脚本设置 shell

】如何在Windows中为npm运行脚本设置shell【英文标题】:Howtosetshellfornpmrun-scriptsinWindows【发布时间】:2014-06-0805:31:48【问题描述】:我在Windows上运行npm,并希望在运行脚本中使用&样式并行操作但是在cmd中并行运行有点混乱在我... 查看详情