1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

[Jexcel]Excelで開けるUTF-8ファイルを作る

Posted at

※いわゆる「//なぜか動く」もので、個人の覚え書きです。

いまはJexcelでなく「Jspreadsheet」に改名したようですね。
設置方法については他の方の記事をご参照ください。

CSVダウンロードすると当然のごとくUTF-8で落ちてくる

CSVビューアーを使ってくれればいいのですが、だいたいの企業の人間はCSVファイルを開くのにExcelを使います。
Excelで直接CSVファイルを開くと、文字コードがSJISでないと日本語が文字化けします。

ダウンロード文字コードを変える

jexcel.jsの5926行目あたりにある以下の記述を変える

jexcel.js
var blob = new Blob(["\uFEFF"+data], {type: 'text/csv;charset=utf-8;'});

jexcel.js
var blob = new Blob(["\uFEFF"+data], {type: 'text/csv;charset=sjis;'});

これだけで「Excelでそのまま開けるがテキストエディタでUTF-8と判定されるCSVファイル」が落ちるようになります。

「\uFEFF」はBOMです。
SJISでは本来不要ですが、これ外すとExcelで文字化けします。
いまのところCSVビューア勢からもExcel勢からも特に何も言われていませんが、バイナリレベルで操作すると何か不具合を起こすかもしれないため、自己責任で。

 

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?