在我的rails应用程序中,我使用西里尔字符工作很多。这没问题,我将它们存储在数据库中,我可以用html显示它。
但我在使用普通的txt文件导出它们时遇到问题。如果我让rails放入txt文件并下载它,像“элиас”这样的字符串会得到“-ç-ª-Π-∞-Å”。这里有什么不对?必须做什么?
此致
利亚
答案 0 :(得分:0)
显然,您的编码存在问题。在将文本写入文本文件之前,请确保文本是Unicode格式。你可以使用这样的东西:
ic = Iconv.new('UTF-8//IGNORE', 'UTF-8')
your_unicode_text = ic.iconv(your_text + ' ')[0..-2]
另外,请仔细检查您的数据库编码是否为UTF-8。西里尔字符可以在DB和html中以非unicode编码显示得很好,例如KOI8-RU,但你可以保证在其他地方遇到问题。