Help us understand the problem. What is going on with this article?

Win/Mac どちらの Excel でも正しく開ける Unicode な csv の出力方法

More than 1 year has passed since last update.

2018/11/27 追記

Excel for Mac 2016 のあるアップデートから UTF8-BOM が開けるようになったようです。
https://www.ka-net.org/blog/?p=7764

手元の 16.16.4 で試してみましたが開くことが出来ました。
平和になってよかったですね。

あらまし

  1. まず UTF-8 で吐いた csv を Excel で開いてみます。化けます。
  2. 仕方がないので BOM をつけてみます。 Win だと正しく開けました!でも Mac で化けます。
  3. それならと UTF-16LE で吐いてみましょう。Win/Mac どちらも化けずに表示されました!これで大丈夫かと思いきやなんとカンマ区切りされず A 列に 1 行まるごと収まっています。死にます。
  4. 仕方がないので tsv で出力してみましょう。すごい!ちゃんと表示されています!でも .tsv はデフォルトでは Excel には関連付けられていないのでダブルクリックでは開けません!これでは .tsv とか意味わからんファイル出力してんじゃねーよ死ねよとか怒られてしまいます。
  5. ならばと拡張子を .csv に偽装してみましょう。なんと正しく表示されました!これなら怒られないし完璧ですね!あれ、でもこれ csv じゃない!!!

まとめ

UTF-16LE な tsv 形式の .csv な拡張子のファイルなら Win/Mac どちらでもダブルクリックで開ける。
インポート操作を許容するなら csv 形式でもデリミタをカンマに変更することによって正しく開けます。

終わりに

Excel 死ね

mashiro
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away