質問編集履歴
1
追記しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -55,3 +55,41 @@
|
|
55
55
|
Python == 3.7
|
56
56
|
|
57
57
|
Django == 2.1
|
58
|
+
|
59
|
+
|
60
|
+
|
61
|
+
###追記
|
62
|
+
|
63
|
+
Webアプリにアクセスし、csvをダウンロードしたら、文字化けをしてしまいました。
|
64
|
+
|
65
|
+
原因は、DBの文字コードがUTF-8なのに文字コードをそのままでcsv自体をShift-Jisで保存されているからです。
|
66
|
+
|
67
|
+
|
68
|
+
|
69
|
+
そのため、中身を確認するために該当のcsvをメモ帳で開き、utf-8で保存することで、Excel上で中身を確認することが出来ました。
|
70
|
+
|
71
|
+
ですが、毎回このようなことをするわけにはいかないので、
|
72
|
+
|
73
|
+
- データの文字コードはUTF-8のままCSVをUTF-8として保存する
|
74
|
+
|
75
|
+
- データの文字コードをShift-Jisに変換し、CSVは現状のままShift-Jisで保存する
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
上記のどちらかの方法をとる必要があると考えました。
|
80
|
+
|
81
|
+
|
82
|
+
|
83
|
+
CSVをUTF-8として保存する方法が分からなかったので、
|
84
|
+
|
85
|
+
2つ目の方法を選択し、
|
86
|
+
|
87
|
+
上に記載したコードのようにunicodedata.normalizeで正規化した後に文字コードをShit-Jisに変換して保存しようとしたのですが、
|
88
|
+
|
89
|
+
一部の文字のShift-Jisへの変換に失敗してエラーとなってしましました。
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
エラー画面は下記です。
|
94
|
+
|
95
|
+
](6aad3336b3b3dd178c4d12a7cba206c6.jpeg)
|