windows下 ruby1.9 中文乱码

装了个ruby 1.9.1,马上写个测试文件 ,内写 puts "你好"

结果发现无论在windows的cmd还是netbeans 上运行都输出乱码, netbean还一度编译报错,说字符编码不对。

于是查找了网络,并实践了一些方案,这里总结一下,以备忘。

1.netbean的乱码最好解决

要在netbean安装目录下 etc/netbean.conf  找到netbeans_default_options(不是最后那个带句号  的…), 在其属性的最后(冒号以内)加一个空格,再加上-J-Dfile.encoding=UTF-8

2.cmd 中文不能输入

右键点击 cmd 窗口上方控制条,选中default->options,把最后一个的default code page 改为 936    (中文)

3.ruby 读取中文强制设置为utf-8
可以在文件中加一个注释语句 # encoding: UTF-8,ruby就会用utf-8格式载入

4.cmd输出乱码
这个解决不掉, 我看到有人用了一个第三方库来解决输出

require 'iconv' 
cov = Iconv.new( 'gbk', 'utf-8')    
puts cov.iconv("北京奥运会!")

5. cmd下面ird能够正确处理中文,有点奇怪


另外, 重装ruby 后发现netbean又中文乱码。无论你怎么改都是乱码。

另外发现 用notepad++打开中文源文件,把编码设置为utf-8(不是 without bom),重新保存, 再运行就没有乱码了。

你可能感兴趣的:(windows,J#,Ruby,Netbeans)