Ruby 无效的多字节字符(UTF-8)

Ruby 无效的多字节字符(UTF-8),ruby,character-encoding,jruby,Ruby,Character Encoding,Jruby,我正在尝试使用选项--1.9编译此Ruby代码: \# encoding: utf-8 module Modd def cpd #"_¦+?" mySQL "ñ,B˜" end end 我使用GVim编辑器进行编译,然后得到以下错误: SyntaxError: f3.rb:6: invalid multibyte char (

我正在尝试使用选项
--1.9
编译此Ruby代码:

\# encoding: utf-8                        
module Modd               
  def cpd          
    #"_¦+?" mySQL         
    "ñ,B˜"        
  end    
end   
我使用GVim编辑器进行编译,然后得到以下错误:

SyntaxError: f3.rb:6: invalid multibyte char (UTF-8)
之后,我使用Notepad++并更改为
编码为UTF-8
,并使用此选项编译:

jruby --1.9 f3.rb
然后我得到:

SyntaxError: f3.rb:1: \273Invalid char `\273' ('╗') in expression

我见过这样的情况,当字符集转换过程中出现混乱时(八进制的BOM是
357273 277
)。如果使用十六进制编辑器(
:%!xxd
on
vi
)打开文件,您很可能会在文件开头看到字符,在第一个
之前


如果您直接在utf-8中重新创建该文件,或者清除这些伪字符,这应该可以解决您的问题。

那么,文件中存储的实际字节是多少?您使用的是什么版本的JRuby?1.6.7?谢谢你的回复。我创建了一个新的文件,带有选项编码utf-8,没有BOM。现在可以工作了。