No.1ベストアンサー
- 回答日時:
そのエラーになるソースコードと具体的なエラーメッセージを載せてください。
「エラーします」だけでは、あらゆる可能性が考えられるので、アドバイスのしようがありません。
例えば、日本語を使う場合、マジックコメントを書く等の方法で「スクリプトがどの文字コードで書かれているか」を指定する必要があります。
http://docs.ruby-lang.org/ja/2.2.0/doc/spec=2fm1 …
これを忘れると
EncodingCompatibilityError: incompatible character encodings: XXXXXX and US-ASCII
といったエラーになります。
ソースコードとエラーメッセージがあれば、上記が原因かどうか判断できます。
ですが、どちらも無ければ、別の原因を排除できません。
No.2
- 回答日時:
Rubyのソースファイルは、基本的に「UTF-8」で作成する必要があります。
サクラエディタでプログラム(.rb)を保存する際、
「ファイル」-「名前を付けて保存する」
下にある、「文字コードセット」を「UTF-8」に変更して保存して実行してみてください。
No.3
- 回答日時:
そのエラーだと、 実際には Shift_JISで書いてあるのに、マジックコメント等で UTF-8になっている(または、何も指定していないために、デフォルトのUTF-8として扱われている)のが原因です。
「スクリプトエンコーディング」を参考に正しく設定するか、ファイルの文字コードを変えましょう。
gets.chompの方は、こちらではちゃんと動作します。
No such file or directory @ rb_sysopen - rb (Errno::ENOENT)
というエラーメッセージでは 「rb_sysopen - 」の後に来るのがその「見つからないファイルまたはディレクトリ」になっているはずです。
このメッセージからすると「rb」というファイルが見つからない、と言っているように見えます。
hello.rb:9 とあるので、 getsの前に8行あるはずです。
ここで何か問題があるのか、あるいは、実行方法に問題があるか、です。
hello.rb の全文と、実行方法はそれぞれどうなっているのですか?
No.4
- 回答日時:
>puts "名前"だと
>C:/Users/�r���z�C/Desktop/Programing/Ruby/hello.rb:9: invalid multibyte char (UTF-8)
>とでてきます
この補足をみると、
encodingがUTF-8で、ソースをかいているのがShift-JISコードのように見えます。
あなたが、使用されていつエディタでは、どの文字コードで書いているかが判りますでしょうか。
もし、わかるなら、文字コードをUTF-8で保存するようにすれば、解決します。
もし、文字コードがわからなければ、Shift-JISコードの可能性が高いので、
hello.rbの先頭行に
# encoding: WINDOWS-31J
を追加してください。(必ず先頭行に記述してください。他の行では効果がありません)
そうすれば、但し結果が得られます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Mac OS MacOSのLaunchAgentsってなんですか?使い方など教えてください。 前の質問でLaunc 1 2022/04/24 02:06
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Ruby Gitのクローンについて 3 2022/04/10 12:28
- PHP $_SESSIONに渡した後はそのまま使っても問題ありませんか? 3 2022/11/08 22:17
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- UNIX・Linux Linuxについて質問です。 以下のhistoryの出力結果から、sedコマンドのファイル名tmp1 1 2023/02/03 20:11
- Visual Basic(VBA) 集めたシートのシート名を変更したい。 下記のコードでサブフォルダにあるファイルのSheet3を集めて 6 2022/08/23 10:38
- Excel(エクセル) フォルダ内の全ブックのシート名を変更したい 7 2022/09/22 21:34
- Ruby Ruby / passenger のインストールについて 1 2023/01/30 18:31
- PHP 記述のおかしいところを教えて下さい。 1 2023/02/03 11:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ruby.exeとrubyw.exeに違いがあ..
-
Ruby / passenger のインストー...
-
プログラミング講師はまだ需要...
-
初心者 パイソンプログラム
-
小文字wと大文字Wの区別
-
システムエンジニアの適正について
-
プログラミング言語で大文字と...
-
COBOLのIFの入れ子について
-
WinXP+Apache2にerubyを入れま...
-
RubyでNo such file or directo...
-
VBとフィボナッチに明るい方、...
-
.NETを勉強したく、C#やVB.NET...
-
式?文?節?
-
Rubyを勉強している初心者です...
-
Rubyの.soについて
-
CかC++どちらを覚えるべきですか?
-
MATLAB
-
Linuxの「find」コマンドについて
-
web上のhtmlファイルから文字デ...
-
ruby on railsインストールでエ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ruby 全角ハイフンを半角ハイフ...
-
ruby.exeとrubyw.exeに違いがあ..
-
gem install railsで「NameErr...
-
rubyでパケットキャプチャ出来...
-
ruby ldapライブラリが利用でき...
-
GUIプログラムを作りたいのですが
-
requireでエラーが起きてしまう
-
システムエンジニアの適正について
-
小文字wと大文字Wの区別
-
Ruby / passenger のインストー...
-
プログラミング講師はまだ需要...
-
VB.NETで階乗を求めるプログラ...
-
初心者 パイソンプログラム
-
CかC++どちらを覚えるべきですか?
-
Ruby interpreter (CUI) 2.2.3 ...
-
RubyでNo such file or directo...
-
web上のhtmlファイルから文字デ...
-
Rubyでpdfファイルを読み込む方法
-
プログラミング言語で大文字と...
-
バーコードのチェックデジット...
おすすめ情報
puts "名前"だと
C:/Users/�r���z�C/Desktop/Programing/Ruby/hello.rb:9: invalid multibyte char (UTF-8)
とでてきます
name=gets.chomp
puts "#{name}"だと
C:/Users/---/Desktop/Programing/Ruby/hello.rb:9:in `gets': No such file or
directory @ rb_sysopen - rb (Errno::ENOENT)
from C:/Users/---/Desktop/Programing/Ruby/hello.rb:9:in `gets'
from C:/Users/---/Desktop/Programing/Ruby/hello.rb:9:in `<main>'