如何用UTF-8字符替换ANSI字符并以UTF-8格式保存文档?

时间:2018-02-01 16:17:16

标签: powershell utf-8 ansi

我试过这个:

(Get-Content c:\example.srt).replace('æ', 'ć') | Set-Content c:\example.srt

但它只用ANSI æ替换字符c

我当时也希望能够替换超过1个字符。

2 个答案:

答案 0 :(得分:0)

你可以这样做:

在字符组中替换它们。在字符组中输入符号。

Get-Content c:\example.srt |% {$_ -replace "[æ\._\.*]", "ć"}

它会将æ_*替换为ć

像:

Get-Date -Format G | foreach {$_ -replace "[:\./]", "_"}

希望它有所帮助。

答案 1 :(得分:0)

你可以放手一搏。它会将文件从Windows-1252转换为UTF-8

$ansi = [System.Text.Encoding]::GetEncoding(1252)

Get-Content -Encoding $ansi "c:\example.srt" | Out-File -Encoding UTF-8 "c:\example.srt"