FileContainer selber basteln
-
Ich möchte selber einen Filecontainer programmieren, mit dem ich mehrere Dateien aneinaderhängen kann, sodass am Ende nur noch eine Datei übrig. (genauso, wie Archivprogramme wie WinRar).
Ich muss also die Dateien einlesen, und irgendwie so in einer Datei verpacken, dass man sie nachher wieder extrahieren kann.
Meine Fragen jetzt:Wie muss so ein FileFormat aufgebaut sein?
Wie schaffe ich es programmiertechnisch die Dateien aneinaderzuhängen?
Habt ihr noch irgendwelche Tipps?Hoffe mein Anliegen ist klargeworden.
-
Hallo
Häng die binären Daten der Dateien einfach einander und füge vor jeder noch die Anzahl Bytes ein.
Der einfachst mögliche Dateiaufbau sähe dann so aus :[4 Byte] - Anzahl der Bytes der folgenden Datei [x Bytes] - Datei [4 Byte] - Anzahl der Bytes der folgenden Datei [x Bytes] - Datei ...Das kannst du noch erweitern indem du als erstes in den Container die Anzahl der Dateien speicherst (wieder 4 Byte?) und noch zu der Größe den Dateinamen schreibst.
Außerdem kannst du noch Prüfsummen einbauen um Fehler zu erkennen.bis bald
akari
-
Ok danke.
So hab ich mir das auch vorgestellt.Mit welche Funktionen kann ich denn die Dateien binär kopieren / aneianderhängen? Weiß nich genau wie ich das Programmiertechnisch umsetzen soll?
-
Hallo
Mit den üblichen std::fstream, im binär-Modus mittels ios_base::binary. Dazu wirst du sicher auch über die SuFu hier im Forum genug finden.
bis bald
akari