الفرق بين المراجعتين ل"Ruby/Encoding/InvalidByteSequenceError/error bytes"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
ط
 
(مراجعتان متوسطتان بواسطة مستخدمين اثنين آخرين غير معروضتين)
سطر 1: سطر 1:
{{DISPLAYTITLE:التابع <code>Encoding.error_bytes</code> في روبي}}
+
{{DISPLAYTITLE:التابع <code>Encoding::InvalidByteSequenceError.error_bytes</code> في روبي}}
 
يُعيد التّابع <code>error_bytes</code> البايتات التي أهملت عندما وقع الخطأ <code>[[Ruby/Encoding/InvalidByteSequenceError|InvalidByteSequenceError]]</code>.
 
يُعيد التّابع <code>error_bytes</code> البايتات التي أهملت عندما وقع الخطأ <code>[[Ruby/Encoding/InvalidByteSequenceError|InvalidByteSequenceError]]</code>.
  
سطر 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
  
سطر 43: سطر 36:
 
[[تصنيف:Ruby]]
 
[[تصنيف:Ruby]]
 
[[تصنيف:Ruby Method]]
 
[[تصنيف:Ruby Method]]
 +
[[تصنيف:Ruby Encoding]]
 
[[تصنيف:Ruby Encoding::InvalidByteSequenceError]]
 
[[تصنيف:Ruby Encoding::InvalidByteSequenceError]]

المراجعة الحالية بتاريخ 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

انظر أيضًا

مصادر