ruby 中文字符to_json後亂碼(unicode)

  今天遇到一箇中文to_json問題json

text = "第1章 青豆 不要被外表騙了"
text.to_json
=> "\"\\u7b2c1\\u7ae0 \\u9752\\u8c46 \\u4e0d\\u8981\\u88ab\\u5916\\u8868\\u9a97\\u4e86\""

中文to_json 就變成unicodespa

 

解決辦法:code

gsub(/\\u([0-9a-z]{4})/){|s| [$1.to_i(16)].pack("U")}blog

text.to_json.gsub(/\\u([0-9a-z]{4})/){|s| [$1.to_i(16)].pack("U")}
=> "\"第1章 青豆 不要被外表騙了\""
相關文章
相關標籤/搜索