invalid multibyte char (US-ASCII) ruby1.9

原创文章,转载请注明来源并保留原文链接

ruby1.9+rails3在helper方法中写中文时,出现invalid multibyte char (US-ASCII)异常了,查了下,原来ruby1.9是用ASCII编码来读源码的,奇怪。
解决办法是在文件的第一行加上

# encoding: utf-8

rails3中确定application.rb中有:

# Configure the default encoding used in templates for Ruby 1.9.
config.encoding = "utf-8"

阅读下面的文章:

http://blog.grayproductions.net/articles/ruby_19s_three_default_encodings
http://blog.grayproductions.net/articles/understanding_m17n

4 thoughts on “invalid multibyte char (US-ASCII) ruby1.9

  1. 我是在SciTE中写的Ruby(1.9.2)代码,字符串内容为中文时也出现这种状况。楼主能帮我解决一下吗?

    • 就是在源文件的最上面一行加 # encoding: utf-8
      你试下,有多个文件的话,每个文件都要加

    • 可能是你没设置编码,参考这篇文章看看:http://www.ubuntusoft.com/scite-setting.html

Leave a Reply

Your email address will not be published. Required fields are marked *