التابع Dir.foreach
في روبي
يستدعي التابع foreach
الكتلة المعطاة على كل ملف من الملفات الموجودة في المجلد المحدد، إذ يمُمرّر أسماء تلك الملفات كوسائط للكتلة.
في حال عدم تمرير أي كتلة، يعاد كائنٌ من النوع enumerator
.
البنية العامة
foreach( dirname ) {| filename | block } → nil
foreach( dirname, encoding: enc ) {| filename | block } → nil
foreach( dirname ) → an_enumerator
foreach( dirname, encoding: enc ) → an_enumerator
المعاملات
dirname
اسم المجلد المعطى المراد تنفيذ الكتلة block
على كل عنصر من عناصره.
encoding
ترميز المجلد المعطى.
القيمة المعادة
ستُعاد القيمة nil
إن أعطيت كتلةٌ ونُفِّذت على كل ملف من ملفاته، وإلا فسيعاد كائنٌ من النوع enumerator
.
أمثلة
مثال عن استخدام التابع foreach
على المجلد testdir
الذي يحوي ملفين عاديين (config.h
و main.rb
)، والمجلد الأب (..
)، والمجلد نفسه (.
):
Dir.foreach("testdir") {|x| puts "Got #{x}" }
سينتج عند تنفيذه:
Got .
Got ..
Got config.h
Got main.rb
انظر أيضًا
- التابع
each
: يستدعي الكتلة المعطاة على كل ملف من الملفات المحتواة في المجلد المحدد، إذ يمُمرّر أسماء تلك الملفات كوسائط للكتلة. - التابع
each_child
: يستدعي الكتلة المعطاة على كل ملف من الملفات المحتواة في المجلد المحدد باستثناء "..
" و ".
"، إذ يمُمرّر أسماء تلك الملفات كوسائط للكتلة.