Domanda

C'è un modo per usare il Net :: Sftp Biblioteca in Rubino (Link API) per impostare il Modalità di trasferimento al binario? Sono impressionante su un sistema Windows e sto caricando un file UTF-8 su un sistema UNIX. La libreria di Ruby apparentemente utilizza il testo come modalità di trasferimento predefinita e causando la mia codifica per essere confusa con ANSI. Se posso forzare la modalità binaria, l'UTF-8 dovrebbe rimanere in tatto.

Grazie

È stato utile?

Soluzione

Penso di aver trovato una soluzione alternativa.

Prima stavamo facendo qualcosa del genere:

sftp.file.open(filename) do |f|
  f.puts(data)
end

Abbiamo cambiato questo per usare un oggetto Stringio, come così:

require 'stringio'
io = StringIO.new(data)
sftp.upload!(io, filename)

Usando il caricamento! Il metodo sembra rispettare la codifica in quanto copia solo i byte.

Spero possa aiutare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top