这个问题实际上是有效的。请注意,ANSI不是ASCII,而是Windows-1252编码的https://en.wikipedia.org/wiki/Windows-1252(参见ISO-8859-1)。它没有BOM。这是powershell5.1的默认设置(除了out-file或“>",即utf 16)。Powershell 7默认为utf8 no bom。
echo á | set-content foo -Encoding Default
cat foo
á
echo á | set-content foo -Encoding ascii
cat foo
?
3条答案
按热度按时间nsc4cvqm1#
PowerShell v2无法识别参数
-Encoding
的参数Default
。使用参数Ascii
保存ANSI编码的文件:或者完全忽略该参数(
Set-Content
默认为ANSI编码):xxe27gdn2#
我使用
.NET
WriteAllText
函数来实现:使用以下命令确保默认编码反映您所需的输出:
否则,添加带有所需编码的枚举作为第三个参数。
ryhaxcpt3#
这个问题实际上是有效的。请注意,ANSI不是ASCII,而是Windows-1252编码的https://en.wikipedia.org/wiki/Windows-1252(参见ISO-8859-1)。它没有BOM。这是powershell5.1的默认设置(除了out-file或“>",即utf 16)。Powershell 7默认为utf8 no bom。