PowerShell | ps1ファイルで日本語の文字化けを回避する方法
PowerShellのps1ファイルは文字エンコードを変更しないと日本語を含むマルチバイト文字は文字化けして扱われてしまいます。
このページでは日本語の文字化けを回避する方法を紹介しています。
確認した環境
OS Windows11 22H2
PowerShell 7.1.3
ps1ファイルで日本語の文字化けを回避する
ps1ファイルで日本語を扱う場合、文字化け対策としてファイルの文字コードは「SHIFT-JIS」 か 「BOM付きUTF-8」で保存する必要があります。
例えば、以下のコマンドを使ってデフォルトの文字エンコーディングを「UTF-8」に設定しても、ファイルの文字コードが「UTF-8」で日本語を含むマルチバイト文字は文字化けしてしまうので注意が必要です。
$OutputEncoding = [System.Text.Encoding]::UTF8
VSCodeでの「BOM付きUTF-8」への変換方法
下部メニューの文字コードをクリック、またはコマンドパレットから「ファイルのエンコードを変更」を実行して「UTF-8 with BOM」を選択します。
Windowsのメモ帳での「BOM付きUTF-8」への変換方法
対象のファイルを「ファイルを開く」から開く時、または「名前を付けて保存」の選択時に「エンコード」の項目から「UTF-8(BOM 付き)」を選択します。
ディスカッション
コメント一覧
まだ、コメントがありません