如何在 powershell 中显示 utf8?

如何在 powershell 中显示 utf8?

所以这真的让我很为难。我有一些 XML:

  <trans-unit id="4" translate="yes" xml:space="preserve">
    <source xml:lang="en-US">Customize Forecast (Outstanding) by Customer Detail</source>
    <target>Настроить просроченный прогноз по клиентам (подробно)</target>
  </trans-unit>
  <trans-unit id="5" translate="yes" xml:space="preserve">
    <source xml:lang="en-US">Posting Period</source>
    <target>Период разнесения</target>
  </trans-unit>

我想将俄语文本提取到文件中。我将 XML 加载到 [xml]$mf 中并执行以下操作:

$mf.xliff.file.body.trans-unit.target

问题是,其渲染结果如下:

Ð'ыполнена Ñин…Ñ€Ð¾Ð½Ð¸Ð·Ð°Ñ†Ð¸Ñ Ñервера машин вложенного ÑпиÑка Файл PDF Полный CSV-ÑкÑпорт Ð´Ð»Ñ Ð´Ð°Ð½Ð½Ñ‹Ñ… учета {1} ÐšÐ°Ñ‚ÐµÐ³Ð¾Ñ€Ð¸Ñ Ð±ÑŽÐ´Ð¶ÐµÑ‚Ð° Показать Ñтроки Ð'Ñ‹Ð±Ñ€Ð°Ð½Ð½Ð°Ñ ÑƒÑлуга FedEx предуÑматривает только один пакет на отгрузку。 ЕÑли зака· Ñодержит неÑÐºÐ¾Ð»Ñ ŒÐºÐ¾ пакетов, оформите каждый пакет как отдельную отгрузку。 Закрыта - потерÑна

这没什么帮助。我已经在谷歌上搜索了一个小时,但显然我遗漏了一些相当明显的东西。

答案1

[xml]$mf = gc .\testxml.txt -Encoding UTF8
$mf.xliff.file.body.'trans-unit'.target | Out-File c:\path\output.txt -Encoding UTF8

答案2

尝试这个

[xml]$mf=Get-Content -Encoding UTF8 file.xml

相关内容