الفرق بين المراجعتين ل"Ruby/IO/seek"

من موسوعة حسوب
< Ruby‏ | IO
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>IO.seek‎</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف: Ruby Method [[تصنيف: Ruby IO]...')
 
سطر 3: سطر 3:
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby IO]]
 
[[تصنيف: Ruby IO]]
يسعى التابع <code>seek</code> إلى التموضع عند الإزاحة المعطاة <code>anInteger</code> في [[Ruby/IO|مجرى د/خ]] وفقا لقيمة <code>whence</code> (انظر فقرة البنية العامة):
+
يسعى التابع <code>seek</code> إلى التموضع عند الإزاحة المعطاة في [[Ruby/IO|مجرى د/خ]] وفقا لقيمة <code>whence</code> (انظر فقرة البنية العامة):
 +
{| class="wikitable"
 +
!قيمة الوسيط ''<code>whence</code>''
 +
!شرح
 +
|-
 +
|‎<code>:CUR</code> أو <code>IO::SEEK_CUR</code>
 +
|يسعى إلى موضع الإزاحة الذي يساوي <code>amount</code> + موضع الإزاحة الحالي.
 +
|-
 +
|
 +
====== ‎:END أو  <code>IO::SEEK_END</code> ======
 +
|يسعى إلى موضع الإزاحة الذي يساوي <code>amount</code> + نهاية المجرى (ستحتاج على الأرجح لإعطاء <code>amount</code> قيمة سالبة).
 +
|-
 +
|‎<code>:SET</code> أو <code>IO::SEEK_SET</code>
 +
|يسعى إلى موضع الإزاحة الموجود عند الموضع <code>amount</code>
 +
|}
  
<syntaxhighlight lang="ruby">:CUR or IO::SEEK_CUR  | Seeks to _amount_ plus current position
 
----------------------+--------------------------------------------------
 
:END or IO::SEEK_END  | Seeks to _amount_ plus end of stream (you
 
                      | probably want a negative value for _amount_)
 
----------------------+--------------------------------------------------
 
:SET or IO::SEEK_SET  | Seeks to the absolute location given by _amount_‎</syntaxhighlight>
 
 
مثال:
 
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="ruby">seek(amount, whence=IO::SEEK_SET)  → 0‎</syntaxhighlight>
 
<syntaxhighlight lang="ruby">seek(amount, whence=IO::SEEK_SET)  → 0‎</syntaxhighlight>
 
==المعاملات==
 
==المعاملات==
 
===<code>amount‎</code>===
 
===<code>amount‎</code>===
 +
عدد صحيح.
 +
 
===<code>whence‎</code>===
 
===<code>whence‎</code>===
 +
راية.
 +
 
==القيمة المُعادة==
 
==القيمة المُعادة==
 +
يعيد التابع <code>seek</code> القيمة صفر.
 +
 
==أمثلة==
 
==أمثلة==
مثال على استخدام التابع <code>seek‎</code>:
+
مثال على استخدام التابع <code>seek‎</code>:<syntaxhighlight lang="ruby">f = File.new("testfile")
<syntaxhighlight lang="ruby">f = File.new("testfile")
 
 
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>
 
==انظر أيضا==
 
==انظر أيضا==
* التابع <code>[[Ruby/IO/rewind|rewind]]</code>: يُموضِع  [[Ruby/IO|مجرى د/خ]] الذي استُدعي معه <code>ios</code> عند بداية الإدخال، مع تعيين <code>[[Ruby/IO/lineno|lineno]]</code> عند القيمة صفر.
+
*التابع <code>[[Ruby/IO/rewind|rewind]]</code>: يُموضِع  [[Ruby/IO|مجرى د/خ]] الذي استُدعي معه عند بداية الإدخال، مع تعيين <code>[[Ruby/IO/lineno|lineno]]</code> عند القيمة صفر.
* التابع <code>[[Ruby/IO/set_encoding|set_encoding]]</code>: في حال تمرير وسيط واحد، فستوسم [[Ruby/String|السلسلة النصية]] المقروءة من [[Ruby/IO|مجرى د/خ]] وفق [[Ruby/Encoding|الترميز]] المحدد.  إن كان الترميز على هيئة حرفي ترميز مفصولين بنقطتين رأسيتين "A: B"، فستُحوّل [[Ruby/String|السلسلة النصية]] المقروءة من الترميز A (الترميز الخارجي) إلى الترميز B (الترميز الداخلي)، ثم توسم بـ B.  في حال إعطاء وسيطين، فيجب أن يكونا كائني [[Ruby/Encoding|ترميز]]، أو اسمي ترميز، حيث يمثل أولها الترميز الخارجي، فيما يمثل ثانيهما الترميز الداخلي. في حال تحديد الترميز الخارجي والترميز الداخلي، فسيحدد الوسيط الاختياري opt خيارات التحويل.
 
 
==مصادر==
 
==مصادر==
 
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-seek قسم  التابع seek‎ في الصنف IO‎ في توثيق روبي الرسمي.]
 
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-seek قسم  التابع seek‎ في الصنف IO‎ في توثيق روبي الرسمي.]

مراجعة 19:54، 13 نوفمبر 2018

يسعى التابع seek إلى التموضع عند الإزاحة المعطاة في مجرى د/خ وفقا لقيمة whence (انظر فقرة البنية العامة):

قيمة الوسيط whence شرح
:CUR أو IO::SEEK_CUR يسعى إلى موضع الإزاحة الذي يساوي amount + موضع الإزاحة الحالي.
‎:END أو IO::SEEK_END
يسعى إلى موضع الإزاحة الذي يساوي amount + نهاية المجرى (ستحتاج على الأرجح لإعطاء amount قيمة سالبة).
:SET أو IO::SEEK_SET يسعى إلى موضع الإزاحة الموجود عند الموضع amount

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

seek(amount, whence=IO::SEEK_SET)   0

المعاملات

amount‎

عدد صحيح.

whence‎

راية.

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

يعيد التابع seek القيمة صفر.

أمثلة

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

f = File.new("testfile")
f.seek(-13, IO::SEEK_END)   #=> 0
f.readline                  #=> "And so on...\n"‎

انظر أيضا

  • التابع rewind: يُموضِع مجرى د/خ الذي استُدعي معه عند بداية الإدخال، مع تعيين lineno عند القيمة صفر.

مصادر