2016年02月15日
ホームページの character-set を宣言する場合 EUC-JP と EUC_JP はどちらが正しいんでしょう?
昔は分かっていたようですが、最近作ったページにEUC_JP と書いてしまいました。
普通にパソコンで見るには正しく見えるんですが、スマホで見ると一瞬文字化けを起こしてすぐに正しい表示になるんです。
何かおかしいと思って調べてみると character-set の書き方が間違っていました。
正しくは EUC-JP です。
これは Shift_JIS がアンダーバーを使うのでついついアンダーバーを書いてしまったんですが EUC-JP の時はハイフンを使うんですね。
紛らわしいです。
で、かなりの数のページを EUC_JP と書いていたのでいちいち書き直すのは大変です。
そんなとき Linux を使っていると便利です。
for a in `find . -name "*.htm" -print`
do
sed -i -e 's/EUC_JP/ECU-JP/g' $a
done
とすれば、全部一発で書きなおしてくれます。
無事、スマホでも文字化けせずに見えるようになりました。