PowerShell: .Resx を CSV に変換する

PowerShell

翻訳を頼むときに必要になったので書いてみた (なぜ XLIFF でないかはさておいて)。

$resx = [xml](Get-Content .\FormMain.resx -encoding utf8)
$resx.root.data | Select Name,Value | Export-Csv -Encoding Default -Path .\FormMain.csv -NoTypeInformation

.Resx の文字列リソースは、 タグの name 属性 (名前) と タグ (値) で格納されているので、これらを取り出して CSV として出力している (参考: MSDN:.Resx ファイル形式のリソース)。

Export-Csv の文字化け対策は、Export-CSVで文字化けする理由 - PowerShell Memo を参考にした。