التابع copy_stream‎ الخاص بالصنف IO في روبي

من موسوعة حسوب
< Ruby‏ | IO
مراجعة 20:50، 12 نوفمبر 2018 بواسطة محمد-بغات (نقاش | مساهمات) (أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>copy_stream‎</code> الخاص بالصنف <code>IO</code> في روبي}}</noinclude> تصنيف: Ruby تصن...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

ينسخ التابع ::copy_stream المصدر المعطى src إلى dst (انظر فقرة البنية العامة). الوسيطان src و dst يمكن أن يكونا إما اسماء ملفات، أو كائن مشابهة للصنف IO. يجب أن يكون للكائنات المشابهة لـ IO بالنسبة للوسيط src التابع readpartial أو read. كما يجب أن يكون للكائنات المشابهة لـ IO بالنسبة للوسيط dst التابع write. (يمكن استخدام الآليات خاصة، مثل استدعاء نظام sendfile، في بعض الحالات المناسبة.)

يُعيد هذا التابع عدد البايت المنسوخة.

في حال عدم إعطاء الوسائط الاختيارية، فإن موضع بدء النسخة سيكون هو بداية الملف، أو موضع التأشير الحالي في الملف الخاص بمجرى د/خ (IO). أما موضع نهاية النسخة فسيكون عند نهاية الملف.

في حال إعطاء copy_length، فلن يتجاوز عدد البايتات المنسوخة القيمة copy_length.

في حال إعطاء src_offset، فسيحدد موضع بدء النسخة.

عند تحديد src_offset، وعندما يكون الوسيط src مجرى د/خ (IO)، فلن يحرك التابع ::copy_stream موضع إزاحة الملف الحالي.

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

copy_stream(src, dst)
copy_stream(src, dst, copy_length)
copy_stream(src, dst, copy_length, src_offset)

المعاملات

src‎

dst‎

copy_length‎

src_offset‎

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

انظر أيضا

  • التابع binwrite: التابع binwrite مشابه للتابع IO.writeX، ما عدا أنه يفتح الملف في الوضع الثنائي (binary mode) وبالترميز ASCII-8BIT ‏("wb: ASCII-8BIT‏")‏.
  • التابع for_fd: مرادف للتابع IO.new.

مصادر