Предоставляет ли Ruby способ сделать File.read ()с указанной кодировкой?

В ruby ​​1.9.x мы можем указать кодировку с помощью File.open('filename','r:iso-8859-1'). Я часто предпочитаю использовать одну строку -File.read (), если я читаю много коротких файлов напрямую в строки. Есть ли способ указать кодировку напрямую или мне нужно прибегнуть к одному из следующих способов?

str = File.read('filename')
str.force_encoding('iso-8859-1')

или

f = File.open('filename', 'r:iso-8859-1')
s = ''
while (line = f.gets)
    s += line
end
f.close
34
задан mu is too short 13 November 2013 в 20:42
поделиться