Ho bisogno di un modo semplice per prendere un file tar e convertirlo in una stringa (e viceversa). C'è un modo per farlo in Ruby? Il mio miglior tentativo è stato questo:
file = File.open("path-to-file.tar.gz")
contents = ""
file.each {|line|
contents << line
}
Ho pensato che sarebbe bastato per convertirlo in una stringa, ma quando provo a riscriverlo in questo modo ...
newFile = File.open("test.tar.gz", "w")
newFile.write(contents)
Non è lo stesso file. Fare ls -l
mostra che i file sono di dimensioni diverse, anche se sono piuttosto vicini (e l'apertura del file rivela la maggior parte dei contenuti intatti). C'è un piccolo errore che sto facendo o un modo completamente diverso (ma praticabile) per farlo?
IO.read
altrimenti sarebbe la risposta preferita.