Windows下的CMD窗口默认是采用非UTF-8编码的,有时候运行一些UTF-8编写的批处理文件在控制台中的输出就是乱码,

CHCP是MD DOS中的命令,用来显示或设置活动代码页编号的。用法是: 
CHCP [num] 
其中num指定的是代码页的编号。这个参数是可选的,如果,在默认的cmd窗口中,我们只输入chcp,显示的将类似: 
活动的代码页: 936

其中 936就是各种编码语言的的编号.

以下是几种常用的编码: 
936 GBK(一般情况下为默认编码) 
437 美国英语 
65001 utf-8

要设置CMD窗口编码格式为UTF-8:

1.运行CMD 
2.在命令行中输入 chcp 65001 回车, 控制台会切换到新的代码页.

3.在标题栏点击右键, 打开属性面板, 会看到”选项”标签页下方显示”当前代码页”的编码. 然后选择”字体”标签页, 把字体设置为Lucia Console, 然后确定关闭.

如果要设置回默认编码:
1.运行CMD

2.在命令行中输入 chcp 936 回车, 控制台会切换到新的代码页.

3.这时该代码页的编码已经换为默认, 但可以关闭后重新打开还是其他编码,可以在标题栏点击右键, 打开属性面板, 选择”选项”标签页, 选中”丢弃旧的副本”多选项, 然后确定关闭.

以上内容转载自:

https://blog.csdn.net/iway_lch/article/details/50408796

这样设置有个问题是:

如果步骤1.运行CMD窗口是通过开始菜单里启动的,那么会出现:

如果先启动CMD窗口,然后运行UTF-8编码格式bat文件,不会输出乱码;

如果直接双击UTF-8编码格式bat文件运行,启动的CMD窗口编码仍为windows默认,仍然会输出乱码.

解决办法是:

步骤1.运行CMD窗口 通过按住Shift+鼠标右键,启动CMD窗口,

使用命令chcp 65001后,右键CMD窗口标题栏,

修改属性里的字体和字体大小.

此时即使是双击UTF-8编码格式bat文件也不会输出乱码了.

设置CMD窗口为UTF-8编码的更多相关文章

  1. 通过cmd修改注册表(设置cmd窗口的大小)

    通过cmd修改注册表(设置cmd窗口的大小) 设置cmd的窗口 mode: modem设置系统设备,主要是lpt1, com1/2, con:启动时设置窗口大小: cmd /k "mode ...

  2. 通过cmd修改注册表并设置cmd窗口的大小

    设置cmd的窗口 mode: modem设置系统设备,主要是lpt1, com1/2, con: 启动时设置窗口大小: cmd /k "mode con: cols=120 lines=40 ...

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

    http://blog.csdn.net/ehcoing/article/details/51865922 ********************************************** ...

  4. Tomcat设置cmd窗口的title属性

    说明:官网下载tomcat之后,双击bin目录下的startup.bat文件,即可运行tomcat:linux下面运行startup.sh. 但是如果测试服务器上面搭建了多个项目,则启动之后窗口一样, ...

  5. cmd窗口编码设置

    问题描述:不知道误操作了什么,导致cmd窗口的鼠标显示位置出现错位,如下: 现在要将鼠标位置调整回来. 使用工具:cmd. 操作步骤: 1.查看cmd属性可以看到 可以看到是UTF-8编码格式的,我们 ...

  6. CMD窗口恢复默认设置

    CMD全称Command,是Windows系统下自带的类DOS系统,在日常工作中,有时候设置会损害CMD窗口的默认,导致浏览效果不佳,这时候需要有办法恢复到默认设置.在注册表中删除以下文件夹即可:HK ...

  7. Windows - CMD窗口UTF8编码乱码问题的解决!

    问题描述    用MS-DOC打开 UTF-8 的文件时, 显示乱码问题根源    CMD默认是Windows系统默认编码(GBK),    用GBK格式来解码UTF-8的文件当然会出现乱码.解决方案 ...

  8. win7/win10 设置始终以管理员身份运行cmd窗口

    在桌面上找到cmd快捷方式图标,右键"属性" 4.选择"快捷方式",点击“高级” 5.勾选用管理员身份运行,点击"确定" 6.点击" ...

  9. 关于mysql使用utf8编码在cmd窗口无法添加中文数据的问题以及解决 方法二

    如果非要用cmd窗口的话,那么可以加这句话,set names gbk:

随机推荐

  1. Java实现 LeetCode 94 二叉树的中序遍历

    94. 二叉树的中序遍历 给定一个二叉树,返回它的中序 遍历. 示例: 输入: [1,null,2,3] 1 2 / 3 输出: [1,3,2] 进阶: 递归算法很简单,你可以通过迭代算法完成吗? / ...

  2. Java实现汉诺塔问题

    1 问题描述 Simulate the movement of the Towers of Hanoi Puzzle; Bonus is possible for using animation. e ...

  3. Jmeter用beanshell将相应中的参数写入到本地文件中

    实现效果: 将每次请求的指定参数写入到本地csv文件中. 实际场景:将登录请求中,服务器返回的token值获取并写入到本地csv文件中,供其他接口调用.这样在压测单接口时,不需要再进行登录,避免压测单 ...

  4. syslog客户端java实现

    //package com.tony.util; import java.io.*; import java.net.*; /** * UDP客户端程序,用于对服务端发送数据,并接收服务端的回应信息. ...

  5. Windows学习Nodejs、Npm和VUE

    前言 本文主要以开发的角度讲解Node.js,Npm和Vue. Node.js学习 什么是Node.js Node.js简单来说就是一个IISExpress,提供一个前端Html的独立运行环境. 安装 ...

  6. [原创][开源] SunnyUI.Net 安装

    SunnyUI.Net, 基于 C# .Net WinForm 开源控件库.工具类库.扩展类库.多页面开发框架 Blog: https://www.cnblogs.com/yhuse Gitee: h ...

  7. MySQL触发器的详细教学与综合分析

    所有知识体系文章,GitHub已收录,欢迎老板们前来Star! GitHub地址: https://github.com/Ziphtracks/JavaLearningmanual MySQL触发器 ...

  8. boost常用库(一):boost数值转换

    在STL中有一些字符转换函数,例如atoi,itoa等,在boost里面只需用一个函数lexical_cast进行转换,lexical_cast是模板方法,使用时需要传入类型.只能是数值类型转字符串. ...

  9. Windows环境下PHP安装pthreads多线程扩展

    一.判断PHP是ts还是nts版 通过phpinfo(); 查看其中的 Thread Safety 项,这个项目就是查看是否是线程安全,如果是:enabled,一般来说应该是ts版,否则是nts版. ...

  10. (六)MySQL数据、库、表的管理

    目录 数据的管理 库的管理 表的管理 数据的管理 一.数据插入语句 1.语法: INSERT INTO 表名(列名,...) VALUES(值1,...); 2.案例:在beauty表中添加一条信息( ...