質問するログイン新規登録

質問編集履歴

2

新たに試みた内容の結果を記載

2016/07/29 03:48

投稿

33gwky5
33gwky5

スコア8

title CHANGED
File without changes
body CHANGED
@@ -61,4 +61,12 @@
61
61
  現在発生している文字化けは以下のとおりです。
62
62
 
63
63
  元のテキスト:テスト タロウ
64
- Excelで開いた場合:繝・せ繝医€€繝上リ繧ウ
64
+ Excelで開いた場合:繝・せ繝医€€繝上リ繧ウ
65
+
66
+ ---
67
+ 追記2
68
+
69
+ テキストエディタでは問題なく開けることから、UTF-8で出力されているのではないかと予測し、javascript側で[Encoding.js](http://polygon-planet-log.blogspot.jp/2012/04/javascript.html)を利用しShift-JISへの変換を試みましたが文字化けが発生してしまいました。何が原因なのでしょうか。
70
+
71
+ 元のテキスト:テスト タロウ
72
+ Excelで開いた場合:ツテツスツトツ ツタツδ債ウ

1

教えていただいた内容を反映し、実際の文字化けの具体例を追記しました

2016/07/29 03:48

投稿

33gwky5
33gwky5

スコア8

title CHANGED
File without changes
body CHANGED
@@ -9,6 +9,11 @@
9
9
  url: 'csv.php',
10
10
  data : /*--サーバーに送るデータ--*/,
11
11
  dataType : 'text',
12
+ //-----------------------------コメントで教えていただき修正しました
13
+ beforeSend : function(xhr) {
14
+ xhr.overrideMimeType("text/plain; charset=shift_jis");
15
+ },
16
+ //------------------------------ここまで
12
17
  success: function(data, textStatus, xhr) {
13
18
  if(data!=""){
14
19
  let downloadData = new Blob([data], {type: 'text/csv'});
@@ -47,4 +52,13 @@
47
52
  $csv = mb_convert_encoding ( $csv, "sjis-win" , 'utf-8' );
48
53
 
49
54
  echo $csv;
50
- ```
55
+ ```
56
+
57
+ ---
58
+ 追記
59
+
60
+ 先ほどコメントで教えていただいたbeforeSendを適用する以前はテキストエディタでも文字化けが発生していたのですが、修正してからはテキストエディタでは問題なく読めるようになりました。
61
+ 現在発生している文字化けは以下のとおりです。
62
+
63
+ 元のテキスト:テスト タロウ
64
+ Excelで開いた場合:繝・せ繝医€€繝上リ繧ウ