Я делаю это на Ruby 1.9, когда хочу убедиться, что все в UTF-8:
if filename.encoding.to_s != 'UTF-8'
filename.encode!('UTF-8')
end
Если ваша ОС не дает имя файла, закодированное с помощью системы кодирования, которая не поддерживает некоторые специальныеСимволы, найденные в имени файла, могут быть закодированы в UTF-8 без разбора.