I received the following error upon saving a new contact. Is there a way to cast "\\xC2"
so that it can be forced to be saved in the UTF-8 format?
c = Contact.new
c.save!
Encoding::UndefinedConversionError: "\\xC2" from ASCII-8BIT to UTF-8: INSERT INTO "contacts" ("body", "created_at", "email", "updated_at") VALUES (?, ?, ?, ?)
Your string is in some other encoding, most likely iso-8859-1, so you should run this to convert it:
"\xC2".encode("iso-8859-1").force_encoding("utf-8")
=> "Ã"
See this question for more information related to this issue.
For what it's worth, I had this issue pop up when I read in a code file that had the degree symbol (°) in a comment. Upon encoding it for json, ruby became incredibly unhappy.
What threw me for a loop was that there wasn't a "Ã" character in the code, so it's just something to keep in mind.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.