9

如何将包含 latin1 字符的字符串转换为 utf8?

该字符串是一个文档,由 open-uri 打开并包含这些特殊字符。

此致

4

2 回答 2

16

图标v

require 'iconv'
i = Iconv.new('UTF-8','LATIN1')
a_with_hat = i.iconv("\xc2")
于 2009-10-07T10:26:33.227 回答
4

从你的标签来看,我猜你想要这样的东西:

require 'rubygems'
require 'open-uri'
require 'nokogiri'
require 'iconv'

file = open(your_uri)
doc = Nokogiri::HTML(Iconv.conv('utf-8', 'latin1', file.readlines.join("\n")))
doc.xpath(your_xpath)

如果您不确定 uri 使用什么字符集,可以使用file.charset来获取字符集而不是'latin'.

于 2009-10-07T11:40:13.947 回答