PowerShell スクリプト:EUC-JP → UTF-8 変換

Powershell ISEに張り付けてEnterでも使用可能です。

# 入力ファイル(EUC-JP でエンコードされているファイル)
$inputFile = "C:\temp\input.csv"

# 出力ファイル(UTF-8 に変換して保存)
$outputFile = "C:\temp\output_utf8.csv"

# エンコード指定:EUC-JP(コードページ 51932)
$eucjp = [System.Text.Encoding]::GetEncoding(51932)

# 入力ファイルを EUC-JP で読み込み
$content = [System.IO.File]::ReadAllLines($inputFile, $eucjp)

# UTF-8 で書き出し(BOMなし)
[System.IO.File]::WriteAllLines($outputFile, $content, [System.Text.Encoding]::UTF8)
UTF-8変換かつBOMありで保存したい場合
# 入力ファイル(EUC-JP でエンコードされているファイル)
$inputFile = "C:\temp\input.csv"

# 出力ファイル(UTF-8 に変換して保存)
$outputFile = "C:\temp\output_utf8.csv"

# エンコード指定:EUC-JP(コードページ 51932)
$eucjp = [System.Text.Encoding]::GetEncoding(51932)

# 入力ファイルを EUC-JP で読み込み
$content = [System.IO.File]::ReadAllLines($inputFile, $eucjp)

# BOM付き UTF-8(Windows 環境ではこちらの方が Excel で文字化けしにくい)
$utf8BOM = New-Object System.Text.UTF8Encoding($true)

[System.IO.File]::WriteAllLines($outputFile, $content, $utf8BOM)

ご参考まで

関連記事

TOP