在DOS中弄乱非典型字符

时间:2011-01-13 17:09:09

标签: batch-file dos

命令行程序输出文件路径列表。我将输出管道传输到另一个程序进行进一步处理。一切正常,直到遇到包含“奇怪”字符(ó,î,ä等)的文件路径。

问题的原因似乎是下面描述的行为:

测试1

当我在cmd.exe中执行此命令时,

C:\temp> echo ó > o.txt

创建的文件的内容将是字符¢。

测试2

我创建了一个包含字符ó的输入文件o_src.txt(使用我的文本编辑器)。

命令

C:\temp> type o_src.txt

将在cmd.exe中打印此字符 ¾

如果我执行

C:\temp>type o.txt

(来自TEST 1的o.txt)结果是ó

测试3

执行命令后

C:\temp> type o_src.txt > o_dst.txt

然后o_src.txt和o_dst.txt的内容是相同的。

这是如何运作的?

ó的ASCII代码:F3 / 243
ASCII码¢:A2 / 162
ASCII代码¾:BE / 190

1 个答案:

答案 0 :(得分:2)

我认为您需要使用CHCP更改代码页。请查看这些问题以获取更多信息。

Batch script is not executed if chcp was called

What encoding/code page is cmd.exe using

Unicode characters in Windows command line - how?