Ich brauche eine einfache Möglichkeit, eine TAR-Datei in eine Zeichenfolge zu konvertieren (und umgekehrt). Gibt es eine Möglichkeit, dies in Ruby zu tun? Mein bester Versuch war folgender:
file = File.open("path-to-file.tar.gz")
contents = ""
file.each {|line|
contents << line
}
Ich dachte, das würde ausreichen, um es in einen String umzuwandeln, aber wenn ich dann versuche, es so wieder aufzuschreiben ...
newFile = File.open("test.tar.gz", "w")
newFile.write(contents)
Es ist nicht dieselbe Datei. Wenn Sie dies tun ls -l
, werden die Dateien unterschiedlich groß, obwohl sie ziemlich nahe beieinander liegen (und beim Öffnen der Datei werden die meisten Inhalte intakt angezeigt). Gibt es einen kleinen Fehler, den ich mache, oder einen ganz anderen (aber praktikablen) Weg, dies zu erreichen?
IO.read
dies sonst die bevorzugte Antwort wäre.