在重定向文件中显示带重音符号的字符 (>output.txt)
Show characters with accents in redirect file (>output.txt)
例子
mode con: cp>%tmp%\output.tmp
notepad %tmp%\output.tmp
显示:
Statut du p‚riph‚rique CON:
---------------------------
Page de codesÿ: 850
而不是:
Statut du périphérique CON:
---------------------------
Page de codes : 850
我也试过 chcp 65001
和 1252
你知道解决办法吗?
编辑:
我使用 truetype Lucida 字体,即使我这样做 type %tmp%\output.tmp
它在控制台中显示正确的字符,但在任何文本编辑器中都没有。
我也试过:
cmd /U /C "chcp 65001>nul &mode con: cp>%tmp%\output.tmp"
和
cmd /A /C "chcp 65001>nul &mode con: cp>%tmp%\output.tmp"
没有成功
您可以使用cmd.exe
的/U开关来输出Unicode字符。例如:
cmd /U /C dir > dirInUnicode.txt
但是,此开关仅适用于内部命令,因此您必须使用辅助文件来转换 mode
命令的输出:
mode con: cp>%tmp%\output1.tmp
cmd /U /C type %tmp%\output1.tmp > %tmp%\output2.tmp
使用 PowerShell 而不是 DOS 作为命令行提示符。它可以完美地处理特殊字符。
C:> powershell
PS C:> mode con: cp > temp.txt
PS C:> notepad temp.txt
例子
mode con: cp>%tmp%\output.tmp
notepad %tmp%\output.tmp
显示:
Statut du p‚riph‚rique CON:
---------------------------
Page de codesÿ: 850
而不是:
Statut du périphérique CON:
---------------------------
Page de codes : 850
我也试过 chcp 65001
和 1252
你知道解决办法吗?
编辑:
我使用 truetype Lucida 字体,即使我这样做 type %tmp%\output.tmp
它在控制台中显示正确的字符,但在任何文本编辑器中都没有。
我也试过:
cmd /U /C "chcp 65001>nul &mode con: cp>%tmp%\output.tmp"
和
cmd /A /C "chcp 65001>nul &mode con: cp>%tmp%\output.tmp"
没有成功
您可以使用cmd.exe
的/U开关来输出Unicode字符。例如:
cmd /U /C dir > dirInUnicode.txt
但是,此开关仅适用于内部命令,因此您必须使用辅助文件来转换 mode
命令的输出:
mode con: cp>%tmp%\output1.tmp
cmd /U /C type %tmp%\output1.tmp > %tmp%\output2.tmp
使用 PowerShell 而不是 DOS 作为命令行提示符。它可以完美地处理特殊字符。
C:> powershell
PS C:> mode con: cp > temp.txt
PS C:> notepad temp.txt