分かりやすく、使いやすく。

Export-CSV の文字化け対策

スポンサーリンク

Export-CSV でファイル出力した際に、全角文字がすべて ??? に文字化けしてしまった場合の対応方法です。文字化けする理由はエンコーディングが正しく指定されていないことが原因なので、 Export-CSV のパラメーターに -Encoding を追加します。

  1. Shift JIS で出力する場合
  2. Shift JIS 以外で出力する場合


Shift JIS で出力する場合

シフト JIS で出力する場合は -Encoding に Default を指定します。次のサンプルコードは、システムのイベントログを取得してシフト JIS で CSV 出力します。

PowerShell(実行可能なサンプルコード)
1
Get-EventLog system | Export-CSV c:\temp\dump.txt -Encoding Default 

Default に何が設定されているかは以下を実行して確認してみてください。

PowerShell(実行可能なサンプルコード)
1
[System.Text.Encoding]::Default 

Shift JIS 以外で出力する場合

指定可能な文字コードは Unicode、UTF7、UTF8、ASCII、UTF32、BigEndianUnicode、Default、OEM です。次のサンプルコードではシステムのイベントログを取得して UTF8 で出力します。

PowerShell(実行可能なサンプルコード)
1
Get-EventLog system | Export-CSV c:\temp\dump_utf8.txt -Encoding UTF8 
スポンサーリンク