我在用URI.unescape http://ruby-doc.org/stdlib-1.9.3/libdoc/uri/rdoc/URI/Escape.html#method-i-unescape要取消转义文本,不幸的是我遇到了奇怪的错误:
# encoding: utf-8
require('uri')
URI.unescape("%C3%9Fą")
结果是
C:/Ruby193/lib/ruby/1.9.1/uri/common.rb:331:in `gsub': incompatible character encodings: ASCII-8BIT and UTF-8 (Encoding::CompatibilityError)
from C:/Ruby193/lib/ruby/1.9.1/uri/common.rb:331:in `unescape'
from C:/Ruby193/lib/ruby/1.9.1/uri/common.rb:649:in `unescape'
from exe/fail.rb:3:in `<main>'
why?
不知道为什么,但你可以使用CGI.unescape
method:
# encoding: utf-8
require 'cgi'
CGI.unescape("%C3%9Fą")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)