批处理文件将Unicode文本转换为Ansi文本

4

我该如何使用批处理文件将一个包含预先存在的Unicode文本的目录转换为ANSI格式?是否有一些工具可以循环遍历这些文件并执行转换操作?


Unicode...你是指UTF-8吗?还是其他什么? - Brad
2个回答

5

5

编辑 - 以下内容将转换带有BOM的UTF-16编码格式。我认为它不适用于任何其他UTF格式。我知道它不适用于UTF-8。我不确定带有BOM的UTF-32是否适用。

for %%F in (*.txt) do type "%%F" >"%%~nF.converted"

如果从命令行运行,则使用单个百分号% 而不是双百分号%%
验证转换后的文件正确无误后,您可以:
del *.txt
ren *.converted *.txt

1
请注意,这使用的是DOS编码。 - Vadzim
1
@Vadzim - DOS(操作系统)现在几乎不存在了,Windows命令行和批处理程序不是DOS。而且没有DOS编码这样的东西。DOS(和Windows命令行)支持许多不同的代码页,每个代码页都有自己的编码。我理解你的意思,但这正是问题的全部意义所在。 - dbenham
我的意思是,在俄语环境下,如果操作系统使用CP866编码,那么大多数人实际需要的却是CP1251编码。 - Vadzim

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接