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

من موسوعة حسوب
ط مراجعة وتدقيق.
طلا ملخص تعديل
 
سطر 13: سطر 13:
مثالٌ عن استخدام  التّابع <code>error_bytes</code>:<syntaxhighlight lang="ruby">
مثالٌ عن استخدام  التّابع <code>error_bytes</code>:<syntaxhighlight lang="ruby">
ec = Encoding::Converter.new("EUC-JP", "ISO-8859-1")
ec = Encoding::Converter.new("EUC-JP", "ISO-8859-1")
begin
begin
 
  ec.convert("abc\xA1\xFFdef")
 ec.convert("abc\xA1\xFFdef")
 
rescue Encoding::InvalidByteSequenceError
rescue Encoding::InvalidByteSequenceError
 
  p $!     #=> #<Encoding::InvalidByteSequenceError: "\xA1" followed by "\xFF" on EUC-JP>
 p $!      #=> #<Encoding::InvalidByteSequenceError: "\xA1" followed by "\xFF" on EUC-JP>
  puts $!.error_bytes.dump         #=> "\xA1"
 
  puts $!.readagain_bytes.dump     #=> "\xFF"
 puts $!.error_bytes.dump          #=> "\xA1"
 
 puts $!.readagain_bytes.dump      #=> "\xFF"
 
end
end



المراجعة الحالية بتاريخ 18:59، 18 أكتوبر 2018

يُعيد التّابع error_bytes البايتات التي أهملت عندما وقع الخطأ InvalidByteSequenceError.

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

error_bytes  string

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

تُعاد سلسلةٌ نصّيةٌ (string) تمثّل البايتات التي أهملت (discarded bytes) عندما وقع الخطأ InvalidByteSequenceError.

أمثلة

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

ec = Encoding::Converter.new("EUC-JP", "ISO-8859-1")
begin
  ec.convert("abc\xA1\xFFdef")
rescue Encoding::InvalidByteSequenceError
  p $!      #=> #<Encoding::InvalidByteSequenceError: "\xA1" followed by "\xFF" on EUC-JP>
  puts $!.error_bytes.dump          #=> "\xA1"
  puts $!.readagain_bytes.dump      #=> "\xFF"
end

انظر أيضًا

مصادر