التابع IO.each‎ في روبي

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث

ينفذ التابع each الكتلة المعطاة لكل سطر في مجرى د/خ الذي استُدعي معه، حيث تُفصل الأسطر بالوسيط sep(انظر فقرة البنية العامة).

يجب أن يكون مجرى د/خ ios مفتوحا في وضعية القراءة، أو سيُطلق الاستثناء IOError.

في حال لم تُعطى أي كتلة، فسيُعاد كائن من الصنف Enumerator بدلاً من ذلك.

راجع صفحة readlines لمزيد من التفاصيل حول الوسيط getline_args.

البنية العامة

each(sep=$/ [, getline_args]) {|line| block }  ios
each(limit [, getline_args])  {|line| block }  ios
each(sep, limit [, getline_args]){|line| block }  ios
each(...)   an_enumerator
each_line(sep=$/ [, getline_args])  {|line| block }  ios
each_line(limit [, getline_args]){|line| block }  ios
each_line(sep, limit [, getline_args]) {|line| block }  ios
each_line(...) an_enumerator

المعاملات

sep‎

فاصل

limit‎

عدد صحيح يمثل الحد الأٌقصى.

القيمة المُعادة

يعيد التابع each مجرى د/خ الذي استُدعي معه، وفي حال لم تُعطى أي كتلة، فسيُعاد كائن من الصنف Enumerator

أمثلة

مثال على استخدام التابع each‎:

f = File.new("testfile")
f.each {|line| puts "#{f.lineno}: #{line}" }

الناتج:

1: This is line one
2: This is line two
3: This is line three
4: And so on...

انظر أيضا

  • التابع each_byte: يستدعي الكتلة المعطاة على لكل بايت (0..255) في مجرى د/خ
  • التابع each_char: يستدعي الكتلة المعطاةة على كل حرف في مجرى د/خ
  • التابع each_codepoint: ينفذ الكتلة المعطاة، مع تمرير الرمز العددي (Integer ordinal) لكل حرف من الحروف الموجودة في مجرى د/خ، مع تمرير رمز اليونيكود (codepoint) كوسيط.

مصادر