Ruby编码问题

时间:2010-05-17 06:17:14

标签: ruby encoding mechanize

我刚开始学习Ruby并且遇到编码问题;

require 'rubygems'
require 'mechanize'
agent = Mechanize.new
agent.get('myurl.....')
agent.page.search('#reciperesult a').each do |item|
   c = Mechanize.new
   c.get(item.attributes['href'])
   puts c.page.search('#ingredients li').text
end

输出文字如下所示h├©nsekj├©tt应该如何显示hønsekjøtt。我正在使用Ruby 1.8.7。任何人都可以指出我正确的方向吗?

2 个答案:

答案 0 :(得分:2)

您在哪里查看输出?它在控制台上吗?如果是这样,你在运行Windows XP吗?我发现在我的Windows设置控制台(我在Git +终端上进行开发)它没有正确显示非ascii字符。在Mac上的终端上显示它们很好。

如果您怀疑这是问题,请将输出写入文件,然后在文本编辑器中查看该文件。这应该显示正确的输出。

答案 1 :(得分:0)

尝试添加:

$KCODE ='UTF8'

在脚本的开头。

编辑:似乎其他人之前有编码问题。尽量遵循here

给出的建议