2012-03-14 13 views
0

私のアプリケーションをruby 1.8.7とrails 3.0.11で実行していましたが、1.9.2 ruby​​とrails 3.2でアップグレードしました.2。 それはルビー1.9.2をサポートしていない私の理解Iconvにうんとこのエラー:Ruby 1.8.7をruby 1.9.2にアップグレードした後、UTF-8で無効なバイトシーケンス

@utf8_converter = Iconv.new('UTF-8//IGNORE', 'UTF-8') 
...... 
...... 
def utf8(untrusted_string) 
valid_string = @utf8_converter.iconv(untrusted_string + ' ')[0..-2] 
return valid_string 

のようなUTFコンバータを持っています。 どのように実行することができますか?

おかげ

答えて

0

のRuby 1.9.2はサポートIconvは、あなたがRVMを通じ​​てルビーを使用している場合、あなたは、以下の方法でそれをインストールする必要があり

$ rvm pkg install iconv 
$ rvm reinstall 1.9.2 --with-iconv-dir=$rvm_path/usr 

よりhere

1

私は信じて読むんこれは正しい軌道に乗るはずです:

def utf8(untrusted_string) 
    valid_string = (untrusted_string + ' ').encode('utf-8') 
    return valid_string 
end 

変数は不要になりました。Iconvは廃止されました。あなたのutf8メソッドだけで手に入ることができます。

関連する問題