【发布时间】:2011-06-08 13:14:36
【问题描述】:
在这个 Grails 应用程序中,我使用代码将数据库寄存器导出到 csv 文件:
response.setHeader "Content-disposition", "attachment; filename=creds.csv"
response.contentType = 'text/csv; charset=UTF-8'
response.setCharacterEncoding("UTF-8")
response.outputStream << respstr
response.outputStream.flush()
浏览器下载的文件有重音问题。
我可以告诉数据库中的数据是好的,因为我还使用 apache.poi.* 实现了 xls 文件的生成,并且重音显示得很好。
psql -l 返回:
Name | Owner | Encoding | Collation | Ctype |
mydb | postgres | SQL_ASCII | C | C |
我应该改变什么才能让它工作?谢谢
【问题讨论】:
-
我认为这是一个问题的完全重复:stackoverflow.com/questions/4784810/…
-
在导入时尝试设置 UTF-8 但没有成功。
-
抱歉,设置什么,BOM?你能找出结果文件的实际编码是什么吗?如果它是正确的 UTF-8,那么问题出在 Excel 方面。如果不是,那么这是一个数据库排序问题,并且您的 Web UI 中也一定看不到变音符号/重音符号 - 是吗?毕竟
respstr来自哪里?
标签: grails csv export diacritics