このエントリーをはてなブックマークに追加


PowerShellでファイル出力がBOM付き、UNICODE(UTF-16)になる場合の対処方法

PowerShellで結果をリダイレクトでファイルに出力すると、BOM付き、UNICODE(UTF-16)でファイルが出力されてしまいます。
これを、BOMなし、SJISにする方法を以下に記します。


関連記事

リダイレクト出力

PS C:\temp> "さくら" > sakura.txt

サクラエディタで開くと Unicode BOM付 と表示されます。

01.png

Set-Content/Add-Contentによる出力

PS C:\temp> "さくら" | Set-Content .\sakura.txt
PS C:\temp> "つばき" | Add-Content .\sakura.txt

サクラエディタで開くと SJIS と表示されます。
Set-Content, Add-Contentを使用すれば、SJISで出力されます。
ただし、以下のリンクに詳細を記述していますが、Set-Content, Add-Contentはリードロックがかかる仕様がありあす。

02.png

Out-Fileによる出力

Out-Fileにオプションなしで実行すると、

PS C:\temp> "さくら" | Out-File .\sakura.txt

サクラエディタで開くと Unicode BOM付 と表示されます。

03.png

ただし、以下のように記述すれば、SJISとして出力することができます。

PS C:\temp> "さくら" | Out-File -Encoding Default .\sakura.txt
04.png

また、UTF-8などにして出力も可能です。
ただし、BOM付きになります。

PS C:\temp> "さくら" | Out-File -Encoding UTF8 .\sakura.txt
05.png

以上、ファイル出力がBOM付き、UNICODE(UTF-16)になる場合の対処方法でした。



添付ファイル: file01.png 725件 [詳細] file02.png 757件 [詳細] file03.png 706件 [詳細] file04.png 755件 [詳細] file05.png 743件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-01-22 (金) 23:13:18