التابع IO.copy_stream
في روبي
ينسخ التابع copy_stream
بيانات من مجرى إلى مجرى آخر.
البنية العامة
copy_stream(src, dst)
copy_stream(src, dst, copy_length)
copy_stream(src, dst, copy_length, src_offset)
المعاملات
src
اسم ملف أو كائن مشابه للصنف IO
يمثِّل المصدر الذي سيُقرَأ منه. الكائنات المشابهة للصنف IO
المُمررة إلى هذا المعامل يجب أن تُعرّف التابع readpartial
أو read
.
dst
اسم ملف أو كائن مشابه للصنف IO
يمثِّل الوجه التي ستُكتَب فيها البيانات التي قُرأَت من المصدر src
. يجب أن يكون للكائنات المشابهة للصنف IO
الممررة إلى المعامل dst
التابع write
. (في بعض الحالات، يمكن استخدام آليات خاصة، مثل استدعاء النظام sendfile
).
copy_length
طول البيانات المراد نسخها من المجرى src
إلى المجرى dst
بالبايت بدءًا من بداية الملف أو الموضع src_offset
. إلى لم يُعطَ هذا المعامل، فستتوقف عملية النسخ عند نهاية الملف.
src_offset
مقدار إزاحة المؤشر بدءًا من بداية المجرى src_offset
بالبايت الذي يحدد موضع بدء عملية النسخ. إن لم يُعطَ هذا المعامل، فستبدأ عملية النسخ من بداية الملف. عند تحديد قيمة المعامل src_offset
وعندما يكون المعامل src
كائنٌ من النوع IO
، فلن يحرك التابع copy_stream
موضع إزاحة الملف الحالي.
القيمة المعادة
يعاد عدد صحيح يمثِّل عدد البايتات التي نُسخَت من src
إلى dst
.
انظر أيضًا
- التابع
binwrite
: يشبه التابعwrite
باستثناء أنه يفتح الملف في الوضع الثنائي (binary mode) وبالترميز ASCII-8BIT.