问题描述:
从数据库中取的中文在cmd运行模式下正常显示,在rubymine中则是中文乱码,为什么?
注释:
只要文件的编码和终端的编码一致puts方法则可以正常显示,
而puts方法是直接将字符串的字节一次输出,而没有转化为有编码格式的字符串对象。
puts data['humanName']
这句在cmd控制台显示就没有问题
如果终端的编码是utf-8,可以用如下的代码来显示,先使用iconv库转换
puts Iconv.new('gb2312', 'utf-8').iconv(data['humanName'])
上面这句在cmd下确是中文乱码,有进一步验证了 文件的编码和终端的编码一致puts方法则可以正常显示