加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – 将转义的XML实体转换回UTF-8

发布时间:2020-12-17 02:59:30 所属栏目:百科 来源:网络整理
导读:所以我在 XML文件中有这个UTF-8字符串: Horrible place. ??? 当我将它提供给外部应用程序时,有趣的角色会以XML实体的形式返回: Horrible place. #x2620;#x2620;#x2620; 在Ruby中,如何将该字符串转换回UTF-8?这可能是一个非常简单的解决方案,但我无法在标
所以我在 XML文件中有这个UTF-8字符串:

Horrible place. ???

当我将它提供给外部应用程序时,有趣的角色会以XML实体的形式返回:

Horrible place. ☠☠☠

在Ruby中,如何将该字符串转换回UTF-8?这可能是一个非常简单的解决方案,但我无法在标准库中找到任何东西;例如. CGI.unescapeHTML(适用于像& gt;这样的东西)似乎完全忽略了它们.

ree-1.8.7-2010.02 > CGI.unescapeHTML('>')
 => ">" 
ree-1.8.7-2010.02 > CGI.unescapeHTML('☠')
 => "☠"

解决方法

好吧,因为它是XML编码的,我会选择XML解析器:

require 'nokogiri'

frag = 'Horrible place. ☠☠☠'
doc = Nokogiri::XML.fragment(frag)
puts doc.text
# >> Horrible place. ???

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读