Я думаю, что нашел обходной путь.
Раньше мы делали что-то вроде этого:
sftp.file.open(filename) do |f|
f.puts(data)
end
Мы изменили это, чтобы использовать объект StringIO, например:
require 'stringio'
io = StringIO.new(data)
sftp.upload!(io, filename)
Использование загрузки!Кажется, что метод уважает кодировку, поскольку он просто копирует байты.
Надеюсь, это поможет.