CSV形式でいくつかのものを出力するだけの非常に単純なものがありますが、UTF-8でなければなりません。このファイルを TextEdit、TextMate、または Dreamweaver で開くと、UTF-8 文字が正しく表示されますが、Excel で開くと、このばかげたことを代わりに実行します。ドキュメントの先頭にあるものは次のとおりです。
header("content-type:application/csv;charset=UTF-8");
header("Content-Disposition:attachment;filename=\"CHS.csv\"");
Excel(Mac、2008)が適切にインポートしたくないことを除いて、これはすべて望ましい効果があるようです。Excel には、「UTF-8 として開く」などのオプションがありません。そのため、少しイライラしています。
多くの人が同じ問題を抱えているにもかかわらず、これに対する明確な解決策がどこにも見つからないようです。私が最もよく目にするのは、BOM を含めることですが、その方法を正確に理解することはできません。上記でわかるようにecho
、私はこのデータを ing しているだけで、ファイルを書き込んでいません。必要に応じてそれを行うことができますが、現時点ではその必要がないように思われるため、そうしていません. 何か助けはありますか?
echo pack("CCC", 0xef, 0xbb, 0xbf);
更新: BOMを検出しようとしていたサイトから取得した BOM をエコーしてみました。しかし、Excel は、インポート時にこれら 3 つの文字を最初のセルに追加するだけで、特殊文字を台無しにします。