O Ruby fornece uma maneira de fazer File.read () com a codificação especificada?

Em ruby ​​1.9.x, podemos especificar a codificação comFile.open('filename','r:iso-8859-1'). Muitas vezes eu prefiro usar um File.read () de uma linha se eu estiver lendo muitos arquivos curtos em strings diretamente. Existe uma maneira que eu possa especificar a codificação diretamente, ou eu tenho que recorrer a um dos seguintes?

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

ou

f = File.open('filename', 'r:iso-8859-1')
s = ''
while (line = f.gets)
    s += line
end
f.close

questionAnswers(1)

yourAnswerToTheQuestion