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

من موسوعة حسوب
< Ruby‏ | IO
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>IO.readlines‎</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف: Ruby Method تصنيف: Rub...')
 
(تدقيق)
 
(مراجعة متوسطة واحدة بواسطة مستخدم واحد آخر غير معروضة)
سطر 3: سطر 3:
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby IO]]
 
[[تصنيف: Ruby IO]]
يقرأ التابع <code>readlines</code> كل الأسطر الموجودة في [[Ruby/IO|مجرى د/خ]] <code>ios</code>، ثم يعيدها في [[Ruby/Array|مصفوفة]]. يتم فصل الأسطر بالوسيط الاختياري <code>sep</code> (انظر فقرة البنية العامة). إن كان الوسيط <code>sep</code> يساوي <code>nil</code>، فسسيُعاد بقية المجرى كتسجيلة (record) واحدة. إن كان الوسيط الأول عددًا صحيحًا، أو إن أعطي الوسيط الاختياري الثاني، فلن تكون [[Ruby/String|السلسلة النصية]] المعادة أطول من حيث عدد البايتات من القيمة المحددة. يجب أن يكون المجرى مفتوحًا في وضعية القراءة أو سيُطلق استثناء <code>IOError</code>.
+
يقرأ التابع <code>readlines</code> كل الأسطر الموجودة في [[Ruby/IO|المجرى]] الذي استدعي معه ثم يعيدها في [[Ruby/Array|مصفوفة]].  
  
 
+
يجب أن يكون المجرى مفتوحًا في وضعية القراءة أو سيُطلق استثناء <code>[[Ruby/IOError|IOError]]</code>.  
 
 
راجع صفحة <code>[[Ruby/IO/readlines|::readlines]]</code> لمزيد من التفاصيل حول getline_args.
 
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="ruby">readlines(sep=$/ [, getline_args])  → array
 
<syntaxhighlight lang="ruby">readlines(sep=$/ [, getline_args])  → array
سطر 14: سطر 12:
 
==المعاملات==
 
==المعاملات==
 
===<code>sep‎</code>===
 
===<code>sep‎</code>===
فاصل
+
محرف يمثِّل الفاصل السطري. القيمة الافتراضية هي: <code>/$</code>. إن كان المعامل <code>sep</code> يساوي <code>nil</code>، فسسيُعاد محتوى المتبقي في المجرى كسجل (record) واحد. وإن إن أعطي المعامل <code>limit</code> أولًا أو إن أعطي مع هذا المعامل أيضًا، فلن تكون [[Ruby/String|السلسلة النصية]] المعادة أطول من القيمة <code>limit</code> المحددة.
===<code>getline_args‎</code>===
 
 
===<code>limit‎</code>===
 
===<code>limit‎</code>===
عدد صحيح يمثل الحد الأٌقصى
+
[[Ruby/Integer|عدد صحيح]] يحدد حجم البيانات الأقصى (بالبايت) المراد قراءتها.
==القيمة المُعادة==
+
 
 +
=== <code>getline_args</code> ===
 +
راجع صفحة <code>[[Ruby/IO/readlines|readlines]]</code> لمزيد من التفاصيل حول هذا المعامل.
 +
 
 +
==القيمة المعادة==
 +
تعاد [[Ruby/Array|مصفوفة]] تحوي كل الأسطر الموجودة في [[Ruby/IO|المجرى]] المعطى بشكل لا يتجاوز الحد <code>limit</code> (إن أعطي).
 +
 
 
==أمثلة==
 
==أمثلة==
 
مثال على استخدام التابع <code>readlines‎</code>:
 
مثال على استخدام التابع <code>readlines‎</code>:
سطر 25: سطر 28:
 
f = File.new("testfile", chomp: true)
 
f = File.new("testfile", chomp: true)
 
f.readlines[0]  #=> "This is line one"‎</syntaxhighlight>
 
f.readlines[0]  #=> "This is line one"‎</syntaxhighlight>
==انظر أيضا==
+
==انظر أيضًا==
* التابع <code>[[Ruby/IO/readline|readline]]</code>: يقرأ  سطرًا كما يفعل التابع <code>IO#gets</code>، إلا أنه يُطلق الاستثناء <code>EOFError</code> عند نهاية الملف.
+
*التابع [[Ruby/IO/puts|<code>puts</code>]]: يكتب الكائن(ات) المُمرَّرة إليه في المجرى الذي استُدعي معه، ويضيف سطرًا جديدًا بعد الأسطر التي لا تنتهي بمحرف السطر الجديد ثم يعيد القيمة <code>nil</code>
* التابع <code>[[Ruby/IO/readpartial|readpartial]]</code>: يقرأ <code>maxlen</code> (انظر فقرة البنية العامة) بايتًا على الأكثر من [[Ruby/IO|مجرى د/خ]]. لا يقوم  بالتعطيل إلا في حال لم يكن في [[Ruby/IO|مجرى د/خ]] <code>ios</code> أي بيانات متوفرة آنيًا. لن يقوم بالتعطيل في حالة توفر بعض البيانات.
+
 
 +
*التابع [[Ruby/IO/read-i|<code>read</code>]]: يقرأ عددًا محدَّدًا من البايتات من [[Ruby/IO|المجرى]] الذي استدعي معه.
 +
*التابع <code>[[Ruby/IO/read nonblock|read_nonblock]]</code>: يقرأ عددًا محدَّدًا من البايتات من [[Ruby/IO|المجرى]] الذي استُدعي معه باستخدام استدعاء النظام <code>read(2)‎</code> بعد تعيين الراية <code>O_NONBLOCK</code> لواصف الملف (file descriptor) الأساسي.
 +
*التابع [[Ruby/IO/readbyte|<code>readbyte</code>]]: يقرأ بايتًا واحدًا من المجرى الذي استدعي معه.
 +
*التابع [[Ruby/IO/readchar|<code>readchar</code>]]: يقرأ محرفًا واحدًا من [[Ruby/IO|المجرى]] الذي استدعي معه.
 +
*التابع [[Ruby/IO/readline|<code>readline</code>]]: يقرأ سطرًا واحدًا من المجرى الذي استدعي معه.
 +
*التابع [[Ruby/IO/readpartial|<code>readpartial</code>]]: يقرأ عددًا محدَّدًا من البايتات من [[Ruby/IO|المجرى]] الذي استدعي معه.
 
==مصادر==
 
==مصادر==
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-readlines قسم التابع readlines‎ في الصنف IO‎ في توثيق روبي الرسمي.]
+
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-readlines قسم التابع readlines‎ في الصنف IO‎ في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 08:53، 23 ديسمبر 2018

يقرأ التابع readlines كل الأسطر الموجودة في المجرى الذي استدعي معه ثم يعيدها في مصفوفة.

يجب أن يكون المجرى مفتوحًا في وضعية القراءة أو سيُطلق استثناء IOError.

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

readlines(sep=$/ [, getline_args])   array
readlines(limit [, getline_args]) array
readlines(sep, limit [, getline_args])  array

المعاملات

sep‎

محرف يمثِّل الفاصل السطري. القيمة الافتراضية هي: /$. إن كان المعامل sep يساوي nil، فسسيُعاد محتوى المتبقي في المجرى كسجل (record) واحد. وإن إن أعطي المعامل limit أولًا أو إن أعطي مع هذا المعامل أيضًا، فلن تكون السلسلة النصية المعادة أطول من القيمة limit المحددة.

limit‎

عدد صحيح يحدد حجم البيانات الأقصى (بالبايت) المراد قراءتها.

getline_args

راجع صفحة readlines لمزيد من التفاصيل حول هذا المعامل.

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

تعاد مصفوفة تحوي كل الأسطر الموجودة في المجرى المعطى بشكل لا يتجاوز الحد limit (إن أعطي).

أمثلة

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

f = File.new("testfile")
f.readlines[0]   #=> "This is line one\n"
f = File.new("testfile", chomp: true)
f.readlines[0]   #=> "This is line one"‎

انظر أيضًا

  • التابع puts: يكتب الكائن(ات) المُمرَّرة إليه في المجرى الذي استُدعي معه، ويضيف سطرًا جديدًا بعد الأسطر التي لا تنتهي بمحرف السطر الجديد ثم يعيد القيمة nil
  • التابع read: يقرأ عددًا محدَّدًا من البايتات من المجرى الذي استدعي معه.
  • التابع read_nonblock: يقرأ عددًا محدَّدًا من البايتات من المجرى الذي استُدعي معه باستخدام استدعاء النظام read(2)‎ بعد تعيين الراية O_NONBLOCK لواصف الملف (file descriptor) الأساسي.
  • التابع readbyte: يقرأ بايتًا واحدًا من المجرى الذي استدعي معه.
  • التابع readchar: يقرأ محرفًا واحدًا من المجرى الذي استدعي معه.
  • التابع readline: يقرأ سطرًا واحدًا من المجرى الذي استدعي معه.
  • التابع readpartial: يقرأ عددًا محدَّدًا من البايتات من المجرى الذي استدعي معه.

مصادر