الفرق بين المراجعتين لصفحة: «Ruby/ARGF/set encoding»

من موسوعة حسوب
< Ruby‏ | ARGF
لا ملخص تعديل
ط مراجعة وتدقيق.
 
سطر 3: سطر 3:
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby ARGF]]
[[تصنيف: Ruby ARGF]]
يضبط التابع <code>set_encoding</code> الترميز الداخلي والخارجي المستعمل مع السلاسل النصية المقروءة من المجرى <code>ARGF</code>.
يضبط التابع <code>set_encoding</code> الترميز الداخلي والخارجي المستعمل مع السلاسل النصية المقروءة من المجرى <code>ARGF</code>.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby"> set_encoding(ext_enc) → ARGF
<syntaxhighlight lang="ruby">set_encoding(ext_enc) → ARGF
set_encoding("ext_enc:int_enc") → ARGF
set_encoding("ext_enc:int_enc") → ARGF
set_encoding(ext_enc, int_enc) → ARGF
set_encoding(ext_enc, int_enc) → ARGF
سطر 21: سطر 21:


=== <code>ext_enc</code> ===
=== <code>ext_enc</code> ===
اسمٌ لترميز أو كائنٌ من النوع <code>encoding</code>. إن أعطي بمفرده، فستُوسَم السلاسل النصية المقروءة من المجرى <code>ARGF</code> بهذا الترميز المعطى. أما إن أعطي مع المعامل <code>int_enc</code>، فيحدِّد هذا المعامل الترميز الخارجي، ويحدِّد المعامل <code>int_enc</code> الترميز الداخلي.
اسمٌ لترميز أو كائنٌ من النوع <code>encoding</code>. إن أعطي بمفرده، فستُوسَم السلاسل النصية المقروءة من المجرى <code>ARGF</code> بهذا الترميز المعطى. أما إن أعطي مع المعامل <code>int_enc</code>، فيحدِّد هذا المعامل الترميز الخارجي، ويحدِّد المعامل <code>int_enc</code> الترميز الداخلي.


=== <code>int_enc</code> ===
=== <code>int_enc</code> ===
سطر 32: سطر 32:
ارجع إلى صفحة التابع <code>[[Ruby/String/encode|String.encode]]</code> للاطلاع على الخيارات التي يمكن استعمالها مع هذا المعامل.
ارجع إلى صفحة التابع <code>[[Ruby/String/encode|String.encode]]</code> للاطلاع على الخيارات التي يمكن استعمالها مع هذا المعامل.
==القيم المعادة==
==القيم المعادة==
يعاد المجرى <code>ARGF</code>
يعاد المجرى <code>ARGF</code>
==أمثلة==
==أمثلة==
مثالٌ على استخدام التابع <code>set_encoding</code>:
مثالٌ على استخدام التابع <code>set_encoding</code>:
<syntaxhighlight lang="ruby"> ARGF.set_encoding('ascii')        # Tag the input as US-ASCII text
<syntaxhighlight lang="ruby">ARGF.set_encoding('ascii')        # Tag the input as US-ASCII text
ARGF.set_encoding(Encoding::UTF_8) # Tag the input as UTF-8 text
ARGF.set_encoding(Encoding::UTF_8) # Tag the input as UTF-8 text
ARGF.set_encoding('utf-8','ascii') # Transcode the input from US-ASCII to UTF-8.
ARGF.set_encoding('utf-8','ascii') # Transcode the input from US-ASCII to UTF-8.
سطر 41: سطر 41:
  </syntaxhighlight>
  </syntaxhighlight>
==انظر أيضًا==
==انظر أيضًا==
* التابع [[Ruby/ARGF/internal_encoding | <code>internal_encoding</code>]]: يعيد الترميز الداخلي (internal encoding) للسلاسل النصية المقروءة من المجرى <code>ARGF</code> على شكل كائن من النوع <code>Encoding</code>.
* التابع<nowiki/>[[Ruby/ARGF/internal_encoding | <code>internal_encoding</code>]]: يعيد الترميز الداخلي (internal encoding) للسلاسل النصية المقروءة من المجرى <code>ARGF</code> على شكل كائن من النوع <code>Encoding</code>.
* التابع [[Ruby/ARGF/external_encoding | <code>external_encoding</code>]]: يعيد الترميز الخارجي (external encoding) للملفات المقروءة من <code>ARGF</code> على شكل كائن من النوع <code>Encoding</code>.
* التابع<nowiki/>[[Ruby/ARGF/external_encoding | <code>external_encoding</code>]]: يعيد الترميز الخارجي (external encoding) للملفات المقروءة من <code>ARGF</code> على شكل كائن من النوع <code>Encoding</code>.
==مصادر==
==مصادر==
* [http://ruby-doc.org/core-2.5.1/ARGF.html#method-i-set_encoding قسم التابع set_encoding في الصنف ARGF في توثيق روبي الرسمي.]
* [http://ruby-doc.org/core-2.5.1/ARGF.html#method-i-set_encoding قسم التابع set_encoding في الصنف ARGF في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 13:50، 3 أكتوبر 2018

يضبط التابع set_encoding الترميز الداخلي والخارجي المستعمل مع السلاسل النصية المقروءة من المجرى ARGF.

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

set_encoding(ext_enc)  ARGF
set_encoding("ext_enc:int_enc")  ARGF
set_encoding(ext_enc, int_enc)  ARGF
set_encoding("ext_enc:int_enc", opt)  ARGF
set_encoding(ext_enc, int_enc, opt)  ARGF

إن مرِّر المعامل ext_enc، فستُوسَم السلاسل النصية المقروءة من المجرى ARGF بهذا الترميز المعطى.

إن مرِّرت السلسلة النصية "ext_enc:int_enc" التي تمثِّل اسمي ترميزين مفصولين بنقطتين، مثل "ascii:utf-8"، فستُحوَّل السلسلة النصية المقروءة من الترميز الأول (الترميز الخارجي) إلى الترميز الثاني (الترميز الداخلي)، ثم تُوسَم بالترميز الثاني.

أمَّا إن مرِّر المعاملان ext_enc و int_enc، فيجب أن يكونا كائنات من النوع encoding أو أسماءٍ لترميزات. مرةً أخرى، يحدِّد الترميز الأول الترميز الخارجي، ويحدِّد الثاني الترميز الداخلي.

إذا حدِّد الترميز الخارجي والترميز الداخلي سويَّةً، فيمكن استخدام المعامل opt الاختياري لضبط عملية التحويل.

المعاملات

ext_enc

اسمٌ لترميز أو كائنٌ من النوع encoding. إن أعطي بمفرده، فستُوسَم السلاسل النصية المقروءة من المجرى ARGF بهذا الترميز المعطى. أما إن أعطي مع المعامل int_enc، فيحدِّد هذا المعامل الترميز الخارجي، ويحدِّد المعامل int_enc الترميز الداخلي.

int_enc

اسمٌ لترميز أو كائنٌ من النوع encoding، إذ يحدِّد الترميز الداخلي المراد استعماله.

ext_enc:int_enc

سلسلةٌ نصيةٌ تمثِّل اسمي ترميزين مفصولين بنقطتين، إذ يستعمل هذا المعامل لتحويل السلسلة النصية المقروءة من الترميز الأول (الترميز الخارجي) إلى الترميز الثاني (الترميز الداخلي).

opt

ارجع إلى صفحة التابع String.encode للاطلاع على الخيارات التي يمكن استعمالها مع هذا المعامل.

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

يعاد المجرى ARGF

أمثلة

مثالٌ على استخدام التابع set_encoding:

ARGF.set_encoding('ascii')         # Tag the input as US-ASCII text
ARGF.set_encoding(Encoding::UTF_8) # Tag the input as UTF-8 text
ARGF.set_encoding('utf-8','ascii') # Transcode the input from US-ASCII to UTF-8.

انظر أيضًا

  • التابع internal_encoding: يعيد الترميز الداخلي (internal encoding) للسلاسل النصية المقروءة من المجرى ARGF على شكل كائن من النوع Encoding.
  • التابع external_encoding: يعيد الترميز الخارجي (external encoding) للملفات المقروءة من ARGF على شكل كائن من النوع Encoding.

مصادر