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

من موسوعة حسوب
طلا ملخص تعديل
ط مراجعة وتدقيق.
سطر 48: سطر 48:
[[تصنيف:Ruby]]
[[تصنيف:Ruby]]
[[تصنيف:Ruby Method]]
[[تصنيف:Ruby Method]]
[[تصنيف:Ruby Encoding]]
[[تصنيف:Ruby Encoding::InvalidByteSequenceError]]
[[تصنيف:Ruby Encoding::InvalidByteSequenceError]]

مراجعة 13:17، 15 أكتوبر 2018

يعيد التّابع source_encoding التّرميز المصدر ككائن. لاحظ أنَّ التّرميز النّاتج قد لا يكون مطابقًا للترميز المصدري الخاص بالمحوّل إذا تمّت عملية التّحويل على عدّة مراحل.

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

source_encoding  encoding

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

يُعاد كائن من النوع Encoding يمثل التّرميز المصدر.

أمثلة

مثالٌ عن استخدام التّابع source_encoding:

ec = Encoding::Converter.new("ISO-8859-1", "EUC-JP") # ISO-8859-1 -> UTF-8 -> EUC-JP

begin

 ec.convert("\xa0") # NO-BREAK SPACE, which is available in UTF-8 but not in EUC-JP.

rescue Encoding::UndefinedConversionError

 p $!.source_encoding              #=> #<Encoding:UTF-8>

 p $!.destination_encoding         #=> #<Encoding:EUC-JP>

 p $!.source_encoding_name         #=> "UTF-8"

 p $!.destination_encoding_name    #=> "EUC-JP"

end

انظر أيضًا

  • التّابع ?incomplete_input: يتحقّق فيما إذا كان خطأ تسلسل البايت الحاصل ناتجًا عن إنهاءٍ مُبكِّرٍ للسّلسلة النّصية.
  • التّابع readagain_bytes: يعُيد البايتات المراد قراءتها مجدّدًا عندما يقع الخطأ InvalidByteSequenceError.

مصادر