打印

[一般问题] ruby处理中文文件,输出的都是"\121\345\433\221",如何能输出中文?

ruby处理中文文件,输出的都是"\121\345\433\221",如何能输出中文?

我写了一个读中文文件的函数,用途是读取并打印一个文本文件的每一行,文本文件是中文,结果输出的都是数字,我该怎么做才能输出中文?
我的代码如下
def get_ts_info
 open('0531.txt') .each{ |x|
 p x
 a = x.split
 p a
 }
end

get_ts_info
本帖最近评分记录
  • drive2me R币 +5 鼓励实际问题。 2008-6-14 14:18

TOP

print和puts都能正确输出中文
但是p不行
本帖最近评分记录
  • drive2me R币 +5 谢谢讲解。 2008-6-14 13:56
Digging ruby with Pickaxe,
Running agilely on rails

TOP

p 是一般调式时所用,比较"底"层的输出,不能处理其他编码.所以输出中文时输出的是编码值。
而且p还不能处理双引号中的转义字符。
puts,printf才是ruby正常的程序输出语句。
本帖最近评分记录
  • drive2me R币 +5 谢谢解释。 2008-6-14 13:57

TOP

2008-08-20 23:52 Crawled by CCBot/1.0 (+http://www.commoncrawl.org/bot.html) @38.103.63.60