日本語ファイルの入出力

前提

  • PowerShellの内部エンコーディングはUTF16。
  • PowerShellが自動判別して読み込めるエンコーディングは、UTF16、SJIS、UTF8(BOMあり)。
    • 入力元のテキストファイルがどうであれ、読み込み時にUTF16へ変換される。
  • PowerShellがファイルを出力する際の既定のエンコーディングはUTF16。
    • すなわち、ファイル書き出しコマンドレットや">" によるリダイレクトでのファイル出力時。
  • 日本語WindowsのPowerShellターミナルソフト(コマンドプロンプト)の既定のエンコーディングはSJIS。

UTF8のテキストファイルを出力

 [console]::OutputEncoding = [Text.Encoding]::UTF8
 echo "あいうえお" > out.txt

参考

https://stackoverflow.com/questions/40098771/changing-powershells-default-output-encoding-to-utf-8


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS