我正在尝试使用选项--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++并更改为Encode as UTF-8
,并使用以下选项进行编译:
jruby --1.9 f3.rb
然后我得到:
SyntaxError: f3.rb:1: 273Invalid char `273' ('╗') in expression
我见过这种情况,当BOM在字符集转换过程中出错时(八进制中的BOM是357 273 277
)。如果使用十六进制编辑器(vi
上的:%!xxd
)打开文件,则很可能会在文件开头第一个#
之前看到字符。
如果您直接在utf-8中重新创建该文件,或者去掉这些伪字符,这应该可以解决您的问题。