【问题标题】:Problem with cyrillic characters in Ruby on RailsRuby on Rails 中的西里尔字符问题
【发布时间】:2010-09-30 10:16:35
【问题描述】:
在我的 rails 应用程序中,我经常使用西里尔字符。没问题,我把它们存储在db中,我可以用html显示。
但我在将它们导出为纯 txt 文件时遇到问题。如果我让 rails 放入一个 txt 文件并下载它,像 "элиас" 这样的字符串会得到 "—ç–ª–∏–∞—Å"。这里有什么问题?必须做什么?
问候,
埃利亚斯
【问题讨论】:
标签:
ruby-on-rails
character-encoding
internationalization
character
【解决方案1】:
显然,您的编码存在问题。在将文本写入文本文件之前,请确保您的文本采用 Unicode。你可以使用这样的东西:
ic = Iconv.new('UTF-8//IGNORE', 'UTF-8')
your_unicode_text = ic.iconv(your_text + ' ')[0..-2]
另外,请仔细检查您的数据库编码是否为 UTF-8。西里尔字符可以在 DB 和非 unicode 编码的 html 中正常显示,例如KOI8-RU,但你肯定会在其他地方遇到问题。