不兼容的字符编码红宝石

时间:2012-07-18 23:13:28

标签: ruby encoding

我的Ruby 1.9

出现以下错误

我尝试使用(作为一些资源建议)

string.force_encoding('utf-8')

但它没有帮助!

任何想法如何解决这个问题?有没有办法在保存到DB之前消除这些字符?还是有办法让它们显示出来?

例如,当我想要打印时:

Opowieść o kulcie przemocy

我明白了:

Opowie?? o kulcie przemocy

1 个答案:

答案 0 :(得分:1)

我使用第一行代码使其工作:

# encoding: UTF-8

string = "Opowieść o kulcie przemocy"
p string.force_encoding('utf-8')

当我写入数据库时​​,我使用的是编码而不是force_encoding,例如:

conn.exec(sql.encode("UTF-8"))

其中sql是包含需要编码的文本的语句