Ответ 1
Как предлагается здесь:
Get-Content tmp.log | Out-File -Encoding UTF8 new.log
У меня есть файл, сохраненный как UCS-2 Little Endian. Я хочу изменить кодировку, поэтому я запустил следующий код:
cat tmp.log -encoding UTF8 > new.log
Результирующий файл все еще находится в UCS-2 Little Endian. Это потому, что конвейер всегда в этом формате? Есть ли простой способ передать это в новый файл как UTF8?
Как предлагается здесь:
Get-Content tmp.log | Out-File -Encoding UTF8 new.log
Я бы сделал это следующим образом:
get-content tmp.log -encoding Unicode | set-content new.log -encoding UTF8
Я понимаю, что опция -encoding выбирает encoding, что файл должен быть прочитан или записан.
загружать содержимое из XML файла с кодировкой.
(Get-Content -Encoding UTF8 $fileName)
Если вы читаете XML файл, вот еще лучший способ адаптироваться к кодировке вашего XML файла:
$xml = New-Object -Typename XML
$xml.load('foo.xml')