重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

require 'open-uri'

file = open('http://www.google.co.jp')
p file.read
というソースコードで、コマンドプロンプトで実行した結果、
C:/samples/samples/09_02/library2.rb:3:in `initialize': Invalid argument @ rb_sysopen - http://www.google.co.jp (Errno::EINVAL)
from C:/samples/samples/09_02/library2.rb:3:in `open'
from C:/samples/samples/09_02/library2.rb:3:in `<main>'
という結果が帰ってくるのですが、なぜでしょうか?教えていただけると幸いです。

質問者からの補足コメント

  • すみません。インタプリタではなくて、コンパイルの間違いでしょうか?確かに結果的にはどちらも同じですが。教えて頂けると幸いです。

    No.1の回答に寄せられた補足コメントです。 補足日時:2025/03/12 08:55

A 回答 (1件)

その open が何者だか、インタプリタが理解できなかったのでは?



require 'open-uri'
URI.open('http://www.google.co.jp')



require 'open-uri'
uri = URI.parse('http://www.google.co.jp')
uri.open

なら良かったと思います。
この回答への補足あり
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています