الصنف IOError في روبي

من موسوعة حسوب

يُطلق الاستثناء IOError عند فشل عملية إدخال/إخراج (IO operation) في روبي.

File.open("/etc/hosts") {|f| f << "example"}
  #=> IOError: not opened for writing

File.open("/etc/hosts") {|f| f.close; f.read }
  #=> IOError: closed stream

تذكر أنَّ فشل بعض عمليات الإدخال/الإخراج قد يؤدي إلى إطلاق الاستثناء SystemCallError، وهذا الاستثناء ليس متفرع من الصنف IOError.

File.open("does/not/exist")
  #=> Errno::ENOENT: No such file or directory - does/not/exist

مصادر