如果我使用dir /s /b>list.txt
,文件名中的所有unicode字符(例如äöüß
)都将被破坏或丢失-而不是ä
,我得到了''
,ü
消失了,依此类推...
是的,我知道,Unicode字符不是命名文件的好方法-它们不是由我命名的。
有没有一种方法可以使文件名正常列出?
答案 0 :(得分:1)
默认控制台代码页通常仅支持Unicode的一小部分。美国Windows默认为代码页437,并且仅支持256个字符。
如果打开Unicode命令提示符(cmd /u
),则当您重定向到文件时,该文件将以UTF-16LE编码,该编码支持所有Unicode字符。记事本应该显示内容,只要其字体支持所使用的字形即可。
更改为支持完整Unicode代码点集的UTF-8(chcp 65001
)之类的编码,并重定向到文件将使用该编码,并且同样有效。