الفرق بين المراجعتين ل"Ruby/IO/pos-3D"

من موسوعة حسوب
< Ruby‏ | IO
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>IO.pos=‎</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف: Ruby Method [[تصنيف: Ruby IO]...')
 
سطر 3: سطر 3:
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby IO]]
 
[[تصنيف: Ruby IO]]
يسعى التابع <code>pos=</code> إلى التموضع عند الإزاحة المحددة (بالبايت) في [[Ruby/IO|مجرى د/خ]] <code>ios</code>. ليس مضمونا أن يكون التموضع صحيحًا عندما يكون [[Ruby/IO|مجرى د/خ]] <code>ios</code> في الوضع النصي (textmode).
+
يسعى التعبير <code>pos=</code> إلى التموضع عند الإزاحة المحددة (بالبايت) في [[Ruby/IO|مجرى د/خ]].  
 +
 
 +
التموضع قد لا يكون صحيحًا عندما يكون [[Ruby/IO|مجرى د/خ]] في الوضع النصي (textmode).
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="ruby">pos = integer → integer‎</syntaxhighlight>
 
<syntaxhighlight lang="ruby">pos = integer → integer‎</syntaxhighlight>
 
==القيمة المُعادة==
 
==القيمة المُعادة==
 +
يعاد العدد الصحيح المعيّن.
 +
 
==أمثلة==
 
==أمثلة==
 
مثال على استخدام التابع <code>pos=‎</code>:
 
مثال على استخدام التابع <code>pos=‎</code>:
سطر 13: سطر 17:
 
f.gets  #=> "This is line two\n"‎</syntaxhighlight>
 
f.gets  #=> "This is line two\n"‎</syntaxhighlight>
 
==انظر أيضا==
 
==انظر أيضا==
* التابع <code>[[Ruby/IO/pos|pos]]</code>: يُعيد  الإزاحة (offset) الحالية (بالبايت) في [[Ruby/IO|مجرى د/خ]] <code>ios</code>.
+
* التابع <code>[[Ruby/IO/pos|pos]]</code>: يُعيد  الإزاحة الحالية (بالبايت) في [[Ruby/IO|مجرى د/خ]].
* التابع <code>[[Ruby/IO/pread|pread]]</code>: يقرأ  <code>maxlen</code> (انظر فقرة البنية العامة) بايت من [[Ruby/IO|مجرى د/خ]] <code>ios</code> باستخدام استدعاء النظام pread، ثم يُعيدها ك[[Ruby/String|سلسلة نصية]] من غير تعديل إزاحة (offset) الواصف الأساسي.  هذا مفيد مقارنة بالجمع بين <code>[[Ruby/IO/seek|#seek]]</code> و <code>[[Ruby/IO/read|#read]]</code> في كونه ذريًا (atomic)، مما يسمح لعدة [[Ruby/Thread|مهام فرعية]]/عمليات بالتشارك في نفس [[Ruby/IO|مجرى د/خ]] <code>[[Ruby/IO|IO]]</code> لقراءة الملف في مواضع مختلفة. هذا سيتجاوز أي مساحة تخزين مؤقت للمستخدمين من طبقة [[Ruby/IO|مجرى د/خ]] <code>[[Ruby/IO|IO]]</code>. في حال إعطاء الوسيط الاختياري <code>outbuf</code> (انظر فقرة البنية العامة)، فينبغي أن يشير إلى [[Ruby/String|سلسلة نصية]] <code>[[Ruby/String|String]]</code>، والتي ستتلقى البيانات. سيُطلق استثناء <code>SystemCallError</code> عند الخطأ، أو <code>EOFError</code> عند نهاية الملف، أو <code>NotImplementedError</code> إن لم يكن نظام التشغيل يدعم استدعاء النظام.
 
 
==مصادر==
 
==مصادر==
 
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-pos-3D قسم  التابع pos=‎ في الصنف IO‎ في توثيق روبي الرسمي.]
 
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-pos-3D قسم  التابع pos=‎ في الصنف IO‎ في توثيق روبي الرسمي.]

مراجعة 16:08، 13 نوفمبر 2018

يسعى التعبير pos=‎ إلى التموضع عند الإزاحة المحددة (بالبايت) في مجرى د/خ.

التموضع قد لا يكون صحيحًا عندما يكون مجرى د/خ في الوضع النصي (textmode).

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

pos = integer  integer

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

يعاد العدد الصحيح المعيّن.

أمثلة

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

f = File.new("testfile")
f.pos = 17
f.gets   #=> "This is line two\n"‎

انظر أيضا

  • التابع pos: يُعيد الإزاحة الحالية (بالبايت) في مجرى د/خ.

مصادر