2024-04-26 04:24:23 发布
网友
Out-File在使用UTF-8时似乎强制使用BOM:
Out-File
$MyFile = Get-Content $MyPath $MyFile | Out-File -Encoding "UTF8" $MyPath
如何使用PowerShell用UTF-8编写没有BOM的文件?
目前,正确的方法是使用@Roman Kuzminin comments向@M.Dudleyanswer推荐的解决方案:
[IO.File]::WriteAllLines($filename, $content)
(我还通过去掉不必要的System名称空间说明将它缩短了一点-默认情况下,它将被自动替换。)
System
使用.NET的^{}类并将$False传递给构造函数似乎是可行的:
$False
$MyFile = Get-Content $MyPath $Utf8NoBomEncoding = New-Object System.Text.UTF8Encoding $False [System.IO.File]::WriteAllLines($MyPath, $MyFile, $Utf8NoBomEncoding)
我想这不会是UTF,但我发现了一个非常简单的解决方案,似乎可以。。。
Get-Content path/to/file.ext | out-file -encoding ASCII targetFile.ext
对我来说,这会导致一个没有bom文件的utf-8,不管源格式如何。
目前,正确的方法是使用@Roman Kuzminin comments向@M.Dudleyanswer推荐的解决方案:
(我还通过去掉不必要的
System
名称空间说明将它缩短了一点-默认情况下,它将被自动替换。)使用.NET的^{} 类并将
$False
传递给构造函数似乎是可行的:我想这不会是UTF,但我发现了一个非常简单的解决方案,似乎可以。。。
对我来说,这会导致一个没有bom文件的utf-8,不管源格式如何。
相关问题 更多 >
编程相关推荐