response.headers["Content-Disposition"] = "attachment; filename=%s.xlsx" % date
현재의 날짜를 받아와서 날짜를 포함한 파일이름을 저장하려고 하니 다음과 같은 에러가 계속 떴다.
UnicodeEncodeError: 'latin-1' codec can't encode characters
dt = datetime.datetime.now()
date = dt.strftime("%m월세금계산서").encode('utf-8')
아무리 변수 타입을 확인해봐도 dt는 str 타입이었고, encode('utf-8')을 했더니 바이트 타입이 되어 그대로 파일명이 'b'12_xec_x9b_x94_xec_x84_xb8_xea_xb8_x88_xea_xb3_x84_xec_x82_xb0_xec_x84_x9c''이 되어버렸다.
dt = datetime.datetime.now()
date = dt.strftime("%m월세금계산서").encode('utf-8').decode('iso-8859-1')
encode('utf-8').decode('iso-8859-1') 했더니 문제가 해결되었다.
'Programming > Solution' 카테고리의 다른 글
[MySQL] function 생성: Sequel Pro (0) | 2020.06.27 |
---|---|
[Error] JqGrid JsonReader: pager 데이터 출력 안됨(TIMESTAMP) (1) | 2020.06.19 |
[Error] 'lateinit' modifier is allowed only on mutable properties : Kotlin (0) | 2020.05.27 |
[Error] Flask 500 Internal Server Error: html (2) | 2019.12.07 |
[Error] flask 실행 실패: Errno 48 (0) | 2019.12.07 |