見出し画像

Windows環境BashスクリプトでText処理したら文字化けする対策


Windows環境でとあるスクリプトで
テキストの文字列を処理していたら、一部の文字が文字化けした。

全文字化けでなくて、一部だけの文字化け。

原因を調べていたら、SJISの文字コードを使ってるテキストが文字化けをしているっぽい。
今の世の中的に、基本はUTF-8で扱うのが文字化けしないためにはよい。

SJIS UTF-8の違いのお勉強
https://www.homepage-tukuri.com/shosinshanyuumon/entry70.html

SJIS特徴
・消費バイトが少ない
・ガラケーで読めるコード
・使いようによって文字化けする
UTF-8特徴
・文字範囲が広く、文字化けしない。
・容量がSJISの約1.5倍
・ガラケーの表示には非対応


エディタによってはDefaultがSJISだったりするので、設定を弄るか、
SJISのテキストをUTF-8に変換したい。

大量のSJISテキストをいちいち開いてUTF-8にして保存しなおすのは正直やっていられないので
一括で変換できる方法ってないのか調べた。

FCCheckerがよさそう
https://webkan.hateblo.jp/entry/20160922/p1
使い方はこちらを参照

FCCheckerにSJISのテキストをまとめてドラッグ&ドロップして
UTF-8を選んで、”元のファイルを置換”を選択し、変換を実行

これで選択したすべてのSJISテキストがUTF-8に変換された。(少し重くなる)

いいなと思ったら応援しよう!