الفرق بين المراجعتين ل"wiki.hsoub.com/Ruby/Encoding/Converter/convert"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'{{DISPLAYTITLE:التابع Encoding::Converter.convert في روبي}} يُحوِّل التابع <code>convert</code> ترميز سّلسلة نصيّة معينة....')
 
(إفراغ الصفحة)
 
(3 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 1: سطر 1:
{{DISPLAYTITLE:التابع Encoding::Converter.convert في روبي}}
 
  
يُحوِّل التابع <code>convert</code> ترميز سّلسلة نصيّة معينة. يجب استخدام التابع <code>finish</code> في النّهاية.
 
 
إذا حدث خطأٌ في التحويل، فسيُرمَى أحد الخطأين <code>Encoding::UndefinedConversionError</code> أو <code>Encoding::InvalidByteSequenceError</code>. لا يزوِّد التّابع <code>convert</code> أي طرائق لاسترداد أو إعادة العملية بدءًا من الاستثناء المرمي. استخدم التابع <code>primitive_convert</code> عندما تريد التّعامل مع هذه الاستثناءات.
 
 
== البنية العامة ==
 
<syntaxhighlight lang="ruby">
 
convert(source_string) → destination_string
 
</syntaxhighlight>
 
 
== المعاملات ==
 
 
=== <code>source_string</code> ===
 
السلسلة النّصية ذات التّرميز المصدر المراد تحويله. يعدُّ المعامل <code>source_string</code> جزءًا من المصدر. تُعين <code>partial_input:</code> مثلًا إلى القيمة <code>true</code> داخليًا (partial_input=>true:).
 
 
== القيم المعادة ==
 
تُعاد السلسلة النصيّة <code>source_string</code> بعد تحويلها إلى التّرميز الوجهة الجديد.
 
 
== أمثلة ==
 
مثالٌ عن استخدام التابع <code>convert</code>:<syntaxhighlight lang="ruby">
 
ec = Encoding::Converter.new("utf-8", "euc-jp")
 
 
puts ec.convert("\u3042").dump     #=> "\xA4\xA2"
 
 
puts ec.finish.dump                #=> ""
 
 
ec = Encoding::Converter.new("euc-jp", "utf-8")
 
 
puts ec.convert("\xA4").dump       #=> ""
 
 
puts ec.convert("\xA2").dump       #=> "\xE3\x81\x82"
 
 
puts ec.finish.dump                #=> ""
 
 
ec = Encoding::Converter.new("utf-8", "iso-2022-jp")
 
 
puts ec.convert("\xE3").dump       #=> "".force_encoding("ISO-2022-JP")
 
 
puts ec.convert("\x81").dump       #=> "".force_encoding("ISO-2022-JP")
 
 
puts ec.convert("\x82").dump       #=> "\e$B$\"".force_encoding("ISO-2022-JP")
 
 
puts ec.finish.dump                #=> "\e(B".force_encoding("ISO-2022-JP")
 
 
 
</syntaxhighlight>
 
 
== انظر أيضًا ==
 
* التّابع replacement::: يُعيد سلسلة الاستبدال النصية.
 
* التّابع replacement: يضبط سلسلة الاستبدال النصية.
 
* التّابع inspect: يُعيد نسخةً قابلةً للطباعة من كائن الصنف Encoding::Converter.
 
* التّابع primitive_errinfo: يُعيد معلوماتٍ مهمّةً حول آخر خطأٍ حدث في مصفوفة مكونة من خمسة عناصر.
 
* التّابع putback: يُعيد البايتات التي ستُحوَّل.
 
 
== مصادر ==
 
* [http://ruby-doc.org/core-2.5.1/Encoding/Converter.html#method-i-convert صفحة التابع convert في الصنف Encoding::Converter في توثيق روبي الرسمي.]
 
[[تصنيف:Ruby]]
 
[[تصنيف:Ruby Method]]
 
[[تصنيف:Ruby Encoding::Converter]]
 

المراجعة الحالية بتاريخ 07:44، 15 أكتوبر 2018