الفرق بين المراجعتين لصفحة: «Ruby/IO/seek»
لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) ط تدقيق |
||
سطر 3: | سطر 3: | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby IO]] | [[تصنيف: Ruby IO]] | ||
يحرِّك التابع <code>seek</code> مؤشر [[Ruby/IO|المجرى]] الذي استدعي معه إلى موضع محدَّد. | |||
== البنية العامة == | |||
<syntaxhighlight lang="ruby">seek(amount, whence=IO::SEEK_SET) → 0</syntaxhighlight> | |||
==المعاملات== | |||
===<code>amount</code>=== | |||
عدد صحيح يحدِّد مقدار إزاحة المؤشر بدءًا من بداية الملف (القيمة الافتراضية للمعامل <code>whence</code>) أو من نهاية الملف أو من الموضع الحالي للموشر نفسه بحسب قيمة المعامل <code>whence</code>. | |||
===<code>whence</code>=== | |||
راية تحدد الموضع الذي سيزاح المؤشر بدءًا منه بالمقدار <code>amount</code>. القيم التي يمكن استعمالها مع هذا المعامل موضحة بالجدول التالي: | |||
{| class="wikitable" | {| class="wikitable" | ||
! | !المعامل <code>whence</code> | ||
!شرح | !شرح | ||
|- | |- | ||
|<code>:CUR</code> أو <code>IO::SEEK_CUR</code> | |<code>:CUR</code> أو <code>IO::SEEK_CUR</code> | ||
| | |يحرَّك المؤشر بمقدار <code>amount</code> + موضع المؤشرالحالي (أي يزاح المؤشر بدءًا من موضعه الحالي). | ||
|- | |- | ||
| | | | ||
====== :END أو <code>IO::SEEK_END</code> ====== | ====== :END أو <code>IO::SEEK_END</code> ====== | ||
| | |يُحرَّك المؤشر بمقدار <code>amount</code> + نهاية المجرى (ستحتاج على الأرجح لإعطاء <code>amount</code> قيمة سالبة لأن المؤشر سيزاح بدءًا من نهاية المجرى). | ||
|- | |- | ||
|<code>:SET</code> أو <code>IO::SEEK_SET</code> | |<code>:SET</code> أو <code>IO::SEEK_SET</code> | ||
| | |يُحرَّك المؤشر بمقدار <code>amount</code> بدءًا من بداية المجرى. | ||
|} | |} | ||
==القيمة المعادة== | |||
تعاد القيمة صفر بعد تنفيذ العملية. | |||
==القيمة | |||
==أمثلة== | ==أمثلة== | ||
سطر 35: | سطر 35: | ||
f.seek(-13, IO::SEEK_END) #=> 0 | f.seek(-13, IO::SEEK_END) #=> 0 | ||
f.readline #=> "And so on...\n"</syntaxhighlight> | f.readline #=> "And so on...\n"</syntaxhighlight> | ||
==انظر | ==انظر أيضًا== | ||
*التابع [[Ruby/IO/pos-3D|<code>pos=</code>]]: يحرِّك عند استدعائه بالشكل <code>pos = integer</code> موضع المؤشر الحالي إلى الموضع <code>integer</code> (بالبايت) [[Ruby/IO|للمجرى]] الذي استدعي معه. | |||
*التابع <code>[[Ruby/IO/rewind|rewind]]</code>: يُموضِع [[Ruby/IO|مجرى د/خ]] الذي استُدعي معه عند بداية الإدخال، مع تعيين <code>[[Ruby/IO/lineno|lineno]]</code> عند القيمة صفر. | *التابع <code>[[Ruby/IO/rewind|rewind]]</code>: يُموضِع [[Ruby/IO|مجرى د/خ]] الذي استُدعي معه عند بداية الإدخال، مع تعيين <code>[[Ruby/IO/lineno|lineno]]</code> عند القيمة صفر. | ||
==مصادر== | ==مصادر== | ||
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-seek قسم | *[http://ruby-doc.org/core-2.5.1/IO.html#method-i-seek قسم التابع seek في الصنف IO في توثيق روبي الرسمي.] |
المراجعة الحالية بتاريخ 09:18، 23 ديسمبر 2018
يحرِّك التابع seek
مؤشر المجرى الذي استدعي معه إلى موضع محدَّد.
البنية العامة
seek(amount, whence=IO::SEEK_SET) → 0
المعاملات
amount
عدد صحيح يحدِّد مقدار إزاحة المؤشر بدءًا من بداية الملف (القيمة الافتراضية للمعامل whence
) أو من نهاية الملف أو من الموضع الحالي للموشر نفسه بحسب قيمة المعامل whence
.
whence
راية تحدد الموضع الذي سيزاح المؤشر بدءًا منه بالمقدار amount
. القيم التي يمكن استعمالها مع هذا المعامل موضحة بالجدول التالي:
المعامل whence
|
شرح |
---|---|
:CUR أو IO::SEEK_CUR
|
يحرَّك المؤشر بمقدار amount + موضع المؤشرالحالي (أي يزاح المؤشر بدءًا من موضعه الحالي).
|
:END أو
|
يُحرَّك المؤشر بمقدار amount + نهاية المجرى (ستحتاج على الأرجح لإعطاء amount قيمة سالبة لأن المؤشر سيزاح بدءًا من نهاية المجرى).
|
:SET أو IO::SEEK_SET
|
يُحرَّك المؤشر بمقدار amount بدءًا من بداية المجرى.
|
القيمة المعادة
تعاد القيمة صفر بعد تنفيذ العملية.
أمثلة
مثال على استخدام التابع seek
:
f = File.new("testfile")
f.seek(-13, IO::SEEK_END) #=> 0
f.readline #=> "And so on...\n"
انظر أيضًا
- التابع
pos=
: يحرِّك عند استدعائه بالشكلpos = integer
موضع المؤشر الحالي إلى الموضعinteger
(بالبايت) للمجرى الذي استدعي معه.