タグ

safariとrubyに関するsecondlifeのブックマーク (1)

  • Journal InTime - to_jsonのSafari対策

    _ to_jsonのSafari対策 この間のコードだと、Safariで文字化けしてしまった。 やっぱり\u記法を使わないといけないようだ。 class String JSON_ESCAPED = { "\010" => '\b', "\f" => '\f', "\n" => '\n', "\r" => '\r', "\t" => '\t', '"' => '\"', '\\' => '\\\\' } def to_json return '"' + gsub(/[\010\f\n\r\t"\\]/) { |s| JSON_ESCAPED[s] }.gsub(/([\xC0-\xDF][\x80-\xBF]| [\xE0-\xEF][\x80-\xBF]{2}| [\xF0-\xF7][\x80-\xBF]{3})+/ux) { |s| s.unpack("U*").pack("n*").

  • 1