class KonoUtils::Encoder
Classe che si occupa di decodificare una qualsiasi stringa in formato utf8, cercando di trovare l'encoding iniziale a tentativi.
Attributes
string[RW]
Public Class Methods
new(string)
click to toggle source
-
Attributes :
-
string -> Stringa da elaborare
-
# File lib/kono_utils/encoder.rb, line 11 def initialize(string) self.string = string end
Public Instance Methods
impossible_encoding()
click to toggle source
Metodo placeholder, volendo si può estendere la funzione e sovrascrivere questa funzione per essere notificati in caso di mancata decodifica
# File lib/kono_utils/encoder.rb, line 45 def impossible_encoding; end
remove_bom()
click to toggle source
Funcione di rimozione del carattere BOM en.wikipedia.org/wiki/Byte_order_mark e encoding normale
# File lib/kono_utils/encoder.rb, line 18 def remove_bom string_encoder.gsub("\xEF\xBB\xBF".force_encoding('UTF-8'), '') end
string_encoder()
click to toggle source
Funzione di encoding semplice
# File lib/kono_utils/encoder.rb, line 24 def string_encoder return string if string.valid_encoding? str = string Encoding.list.each do |e| begin str.force_encoding(e.name) tmp_string = str.encode('UTF-8') return tmp_string if tmp_string.valid_encoding? rescue Rails.logger.debug { "Rescue -> #{e.name}" } if defined?(::Rails) end end impossible_encoding string end