Я продолжаю получать Encoding::UndefinedConversionError - "\xC2" from ASCII-8BIT to UTF-8
каждый раз, когда я пытаюсь преобразовать хэш в строку JSON. Я попытался с [.encode | .force_encoding](["UTF-8" | "ASCII-8BIT" ])
, привязав .encode
с помощью .force_encoding
, назад, переключив параметры, но ничего не работало, поэтому я поймал ошибку следующим образом:
begin
menu.to_json
rescue Encoding::UndefinedConversionError
puts $!.error_char.dump
p $!.error_char.encoding
end
Если меню представляет собой сиквел dataset.to_hash с содержимым из базы данных MySQL DB, utf8_general_ci и возвращает это:
"\ xc2"
< #Encoding: ASCII-8BIT >
Кодировка никогда не изменяется, независимо от того, что я использую .encode
/.force_encoding
. Я даже попытался заменить строку .gsub!(/\\\xC2/)
без везения.
Любые идеи?