UTF8の多言語ファイルを文字化けせずにエクセルで開けるようにする
よくあるCSVダウンロード機能で、多言語(日本語、中国語、etc)が記載されたUTF8テキストファイルをダウンロード。
そのままエクセルで開くと文字化けする。。。(SJISに変換すると日本語以外の文字が落ちる)
で、調べてみるとUTF8のファイルをエクセルで開くようにするには、BOMマークをつけてあげればいいとのこと。
strip the UTF-8 BOM
を見て、ファイルの先頭3byteにBOMを追加。
//BOMマーク print pack('CCC', 239, 187, 191); print '"こんにちは","中国語"';
で、エクセルで開いてみるとうまくいきました。