Sha256: 23285f653a6dd04193b010ede10e0e856c308da8b18d42d1ffef3eca4f4138ff
Contents?: true
Size: 453 Bytes
Versions: 13
Compression:
Stored size: 453 Bytes
Contents
class FileReader def self.read(file) str = File.read(file) # Try it as UTF-8 directly cleaned = str.dup.force_encoding('UTF-8') unless cleaned.valid_encoding? # Some of it might be old Windows code page cleaned = str.encode( 'UTF-8', 'Windows-1252' ) end str = cleaned rescue EncodingError # Force it to UTF-8, throwing out invalid bits str.encode!('UTF-8', invalid: :replace, undef: :replace) end end
Version data entries
13 entries across 13 versions & 1 rubygems