Board logo

标题: [文本处理] delims=后面加上任意中文字符时bat文件就无法运行 [打印本页]

作者: opoetze    时间: 2022-11-4 17:37     标题: delims=后面加上任意中文字符时bat文件就无法运行

跟着新手教程时发现的问题:
例如:
  1. @echo off
  2. for /f  "delims=," %%i in (test.txt) do echo %%i
  3. pause
复制代码
代码里delims=后面加上任意中文字符都不行(包括中文状态下的逗号、汉字等),英文状态下的字符就能正常运行,这是怎么回事?

test.txt的内容:
论坛的目标是:不求最大,但求最好,做最实用的批处理论坛。
论坛地址:bbs.bathome.net。
这里是:新手晋级的福地,高手论剑的天堂。
作者: lancer    时间: 2022-11-4 18:23

1、注意test.txt文本的编码方式要是ANSI
2、注意批处理的编码方式是ANSI
作者: opoetze    时间: 2022-11-4 19:10

1、注意test.txt文本的编码方式要是ANSI
2、注意批处理的编码方式是ANSI
lancer 发表于 2022-11-4 18:23



    谢谢
作者: hlzj88    时间: 2022-11-4 21:03

加中文字符即便是保存为ansi,有的运行后还是会自动变为utf-8,原理不明白。
作者: lancer    时间: 2022-11-5 20:54

回复 4# hlzj88


    不会自动变的,你先建立一个txt文档,输入代码,然后另存为ANSI编码的bat即可。
文本也是要另存为ANSI的文本,前提是你txt的内容是中文,如果是纯英文的,那会变的。




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2