0
CSVファイルをダウンロードする機能をユーザーに提供したいと思います。リクエストが完了したときに作成されます。ユーザーが要求を行い、データがデータベースから取得され、ファイルが作成されます。私は特定のエンコーディング(私の場合はUTF-8)を使用したいと思います。エンコーディングを指定しないと、サーバーのローカルエンコーディングが使用されていると思います(私の場合はascii-usです)。だから、私はヘッダとしてエンコーディングを渡そうとしましたが、成功しませんでした。エンコーディングはまだascii-usです。ここに私のコードです。ここでCSVファイルエンコーディングをTornadoでPythonでダウンロードするときの指定方法
class CsvHandler(RequestHandler):
lines = ['line1', 'line2'] # in actual use case those lines are from DB
def get(self):
self.set_header('Content-Type', 'text/csv')
self.set_header('Content-Disposition', 'attachment; filename=' + filename)
self.set_header('Content-Encoding', 'UTF-8')
for line in lines:
self.write(line.encode('UTF-8'))
ダウンロードしたファイルの詳細です:
my_file.csv my_file.csv -i
ファイル:text/plainでは、文字セット= US-ASCII
私は文字セットを持っていると思います= UTF8
ありがとうございました!
を試すことができますが、その間に、まだ私は、ダウンロードした後、型をチェックするとき、それはUS-ASCII – giliev
全体ではなく、生をコードしているのです、別途各フィールドを符号化することを試みました。 – Anoop
も試してみましたが、うまくいきませんでした – giliev