文本输出中的奇怪字符“ÿ”(应该是空格)。这是为什么,我该如何解决?在提示符下执行命令时不会发生。仅当通过管道传输到文本文件时。
Windows 7的
c:\tasklist > text.txt
输出:
系统 4 服务 0 1ÿ508 K
smss.exe 312 服务 0 1ÿ384 K
csrss.exe 492 服务 0 5ÿ052 K
您可以在控制台窗口中看到的“空格”不是 ASCII 码为 32 (0x20) 的标准空格字符,而是可能在大多数 OEM 代码页中的 ASCII 码为 255 (0xFF) 的不间断空格。
将输出重定向到文件后,您可能在默认情况下使用不同的代码页显示内容的编辑器中打开了文件,可能是 Windows-1252,因为代码为 255 的字符ÿ
在 Windows-1252 中。
安德烈是对的。
我添加了
chcp 1252
在我的批处理文件的开头,所有奇怪的字符都被正确地翻译成输出文件中的空格。