装了个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的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),重新保存, 再运行就没有乱码了。