gpt4 book ai didi

ruby-on-rails-3 - 将 Rails 数据导出到 CSV 的字符编码问题

转载 作者:行者123 更新时间:2023-12-04 04:33:02 24 4
gpt4 key购买 nike

我正在将数据导出到 Rails 和我的某些字段中的 CSV 文件中,当我在 Excel 中打开时,我遇到了这样的字符编码问题:

didn’t

我从一个例子中借用了这段代码,我假设编码是关闭的。知道它应该是什么吗?
send_data csv_data,
:type => 'text/csv; charset=iso-8859-1; header=present',
:disposition => "attachment; filename=#{filename}.csv"

最佳答案

当 Excel 打开 CSV 文件时,它只假定“iso-8859-1”字符编码。我猜它甚至不知道您在 HTTP 回复中发送的编码信息。这就是将其设置为 UTF-8 不起作用的原因。

因此,为了在 Rails 中导出 Excel 的 CSV 文件,您可以执行以下操作:

send_data Iconv.conv('iso-8859-1//IGNORE', 'utf-8', csv_data),
:type => 'text/csv; charset=iso-8859-1; header=present',
:disposition => "attachment; filename=#{filename}.csv"

这会将您的 UTF-8 数据字符串(这是 Rails 的默认值)重新编码为 ISO-8859 并将其发送。随之而来的是此回复实际上是 ISO-8859-1 编码的信息(这不会对 Excel 产生影响,但如果您应该在浏览器等中打开它,则在技术上是正确的)。

关于ruby-on-rails-3 - 将 Rails 数据导出到 CSV 的字符编码问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9639153/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com