当我从API调用中插入某些字符串到我的数据库时,它们会在某些字符处被截断。这与红宝石1.8.7。我已将所有设置设置为utf8应用程序范围并在MySQL中。我通常在应用程序的其他部分将utf8内容输入数据库时没有任何问题。为什么ActiveRecord和/或MySQL对这个角色有问题?
它应该是“El Soldado y LaMuñeca”。如果我把它插入到数据库中,只有这样:“11 El Soldado y La Mu”。
>> name => "11 El Soldado y La Mu?eca(1).mp3" >> name[20..20] => "u" >> name[21..21] => "\361" >> name[22..22] => "e"
- 是一个UTF8字符?
- 我知道,红宝石1.8不是编码感知,但说实话,我总是忘记这应该如何影响我 - 我总是把所有其他层的一切设置为UTF8,一切都很好。为什么现在不工作?
更新
CORRECTION--我错了,它不是从API的到来,它从文件系统中来。
错误编码的字符来自屋内!
新的问题:How can I get utf8 characters from File#path
我不是一个Ruby人,所以这可能是一个愚蠢的建议,但*连接*编码也设置为UTF-8?我认为它在每个平台的默认为ISO-8859-1 –
是的,连接设置为utf8太 –
看到我的新问题... http://stackoverflow.com/questions/7266815/how-can-i-get -utf8-characters-from-filepath –