【问题标题】:unicode not displaying from batbat 不显示 unicode
【发布时间】:2015-10-25 19:46:34
【问题描述】:

我的 unicode 字符在运行批处理文件中显示不正确,但在 cmd 提示符下显示正常

(注意:您必须设置 cmd 才能使用 consolas 才能工作)

所以我有一个包含

的文本文件
╔══════╗
║      ║
╚══════╝

和一个包含

的bat文件
chcp 65001
@echo off 
cls
type textfile.txt
pause

当我打开一个 cmd 窗口并输入 chcp 65001 然后 type textfile.txt 我得到

╔══════╗
║      ║
╚══════╝

但如果我尝试运行 bat 文件,我得到的只是

´╗┐ÔòöÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòù
Ôòæ      Ôòæ
ÔòÜÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòØ

如果我不使用 chcp.. 出于某种原因从 bat 文件运行时 type 命令没有使用 type 页面,这通常会发生什么?

【问题讨论】:

    标签: windows batch-file unicode cmd


    【解决方案1】:

    这是因为您的批处理文件以 UTF8 编码保存,开头带有标准的 3 字节 BOM(字节顺序标记)。 CMD 解释器无法识别这些字符,它将它们视为第一行的一部分,自然无法执行???chcp

    • 在没有 BOM 的情况下以 UTF-8 重新保存文件
    • 或者在开头添加一个空行

    【讨论】:

    • 我不知道 BOM 是什么,我将文件保存在记事本中(没有提供 BOM 选项),同时我试图从 bat 文件中获取符号,所以谢谢!
    猜你喜欢
    • 2012-12-19
    • 1970-01-01
    • 2011-07-18
    • 1970-01-01
    • 1970-01-01
    • 2016-04-05
    • 2015-07-04
    • 2020-04-01
    • 1970-01-01
    相关资源
    最近更新 更多