无忧启动论坛

标题: 批处理的重定向符>和>>如何输出指定编码的文本文档? [打印本页]

作者: bjay2008xmy    时间: 2022-5-13 13:34
提示: 作者被禁止或删除 内容自动屏蔽
作者: 481416322    时间: 2022-5-13 14:07
用Uedit查看一下
作者: sunsea    时间: 2022-5-13 14:43
本帖最后由 sunsea 于 2022-5-13 14:56 编辑

默认的cmd代码页是936,就是GBK(一般理解的ANSI)

  1. @echo off
  2. chcp 65001
  3. echo 测试(一大段话)>a.txt
复制代码

65001是UTF8的代码页编号,以上可以输出UTF8,记得要用UTF8编码保存这个cmd,或者用WinHex等十六进制编辑器在echo后面手动填上UTF8编码的文字。
暂未发现指定输出UTF16LE的方法。
另:真有指定编码需要建议使用PowerShell或PECMD2012。也可参考http://bbs.wuyou.net/forum.php?mod=viewthread&tid=416020


作者: conlin888    时间: 2022-5-13 14:46
对CMD要求太高了。
作者: bjay2008xmy    时间: 2022-5-13 15:10
提示: 作者被禁止或删除 内容自动屏蔽
作者: sunsea    时间: 2022-5-13 15:12
本帖最后由 sunsea 于 2022-5-13 15:15 编辑
bjay2008xmy 发表于 2022-5-13 15:10
@echo off
chcp 936
echo hello >test.txt

英文体现不出编码,本质上UTF8和GBK的英文编码是一样的。(但是UTF16不一样)所以你需要【大量汉字】才能体现。少量汉字容易让系统识别错误,比如经典的“联通”。如果你有输出UTF8的BOM字节的需要,请使用PowerShell或者PECMD2012。
作者: szwp    时间: 2022-5-13 15:26
sunsea 发表于 2022-5-13 14:43
默认的cmd代码页是936,就是GBK(一般理解的ANSI)

环境允许的话,可以这样试试。

@mshta http://bathome.net/s/hta/  iconv('ansi.txt','utf-16.txt','gbk','utf-16')
作者: zxwei    时间: 2022-5-13 16:00
帮顶下
作者: junyee    时间: 2022-5-13 16:45
下载个 iconv 就可以了。
作者: 9527sss    时间: 2022-5-13 17:34
帮顶起
作者: bjay2008xmy    时间: 2022-5-13 21:43
提示: 作者被禁止或删除 内容自动屏蔽
作者: bjay2008xmy    时间: 2022-5-13 21:44
提示: 作者被禁止或删除 内容自动屏蔽
作者: bjay2008xmy    时间: 2022-5-18 22:51
提示: 作者被禁止或删除 内容自动屏蔽
作者: 逍遥逸仙    时间: 2022-5-24 17:56
sunsea 发表于 2022-5-13 15:12
英文体现不出编码,本质上UTF8和GBK的英文编码是一样的。(但是UTF16不一样)所以你需要【大量汉字】才能 ...

学习了。。。
作者: cxincn    时间: 2022-5-27 12:47
学习学习
作者: 断桥烟雨    时间: 2022-5-30 15:39

学习学习
作者: 创新科技2015    时间: 2023-7-30 17:59
学习学习
作者: 2011jifeiyun    时间: 2023-8-1 10:13
感谢分享 学习了




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net./) Powered by Discuz! X3.3