utf8/utf16以外のrubyファイルを取り扱う概要hmRb/IronRubyは、「utf8(BOM有り)」「utf16(BOM有り)」 又、BOMが無いファイルをDoFileしようとした際には、デフォルトではutf8(BOM無し)とみなします。 それ以外の特別な文字コードの「.rb」を「DoFile」で読み込ませたい場合には、自動判別が出来ないため、 cp932(ShiftJIS)の.rbファイルBOMが無いファイルをDoFileしようとした際には、デフォルトではutf8(BOM無し)とみなしますが、 #dll = loaddll( hidemarudir + @"\hmRb.dll" ); #r = dllfuncw( #dll, "SetCodePage", 932 ); // BOMが無いファイルをDoFileしたら、cp932(sjis)とみなす。BOMがあるファイルはBOM情報に従う。 #r = dllfuncw( #dll, "DoFile", currentmacrodirectory + "\\test.rb" ) freedll(#dll); 注意点としては以下の2つとなります。
codingの指定「#coding:cp932」などと指定して下さい、 例えば、以下のような「test.rb」を用意し、cp932(sjis)で保存します。 #coding: cp932 $hm.debuginfo("文字コードの例"); |