Ruby 求助编码问题,为何加上 inspect 后中文显示不正常

bjyuxiao · 2013年02月01日 · 最后由 chenge 回复于 2013年02月01日 · 2544 次阅读

代码: #encoding:utf-8

arr = Array.new s = "中国" j = "吉林" arr << s arr << j puts arr puts arr.inspect

输出:

中国 吉林 ["\u4E2D\u56FD", "\u5409\u6797"] [Finished in 0.1s]

这个怎么破,为什么加上 inspect 后就变成了 ["\u4E2D\u56FD", "\u5409\u6797"]

版本 1.9.3 p125

那个是 unicode 吧。显示就不要 inspect

恩是 unicode ,有点特殊的需求,就需要显示诸如 ["中国 “,"吉林"] ,这种形式,在 1.8.6 的时候没碰到这样得问题啊,刚升得版本,奇怪了。

na = arr.map { |x| '"'+x+'"'} puts na.join ','

版本升级会有变化,正常的。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号