Entwickler-Ecke

IO, XML und Registry - DatDirekt in zip schreiben


Boldar - Mi 23.04.14 21:12
Titel: DatDirekt in zip schreiben
Hi,
folgendes Szenario: ein Programm, welches bestimmte ereignisse loggt (wers genauer wissen will: www.wottools.com, ist aber gerade leider down :-( ), soll diese zusätzlich zum abschicken an den zentralen Server lokal Speichern. Auf Wunsch eines Users ist das bisher in einer csv-Ähnlichen Struktur. Nun ist aber zusätzlich ein anderes Format notwendig, zwei Dateien anzulegen fördert aber nicht die Übersichtlichkeit. Deshalb suche ich nach einer Möglichkeit, in C# quasi inplace zip-Dateien anzulegen. Ich möchte also nicht die Dateien erst auf die Platte schreiben und dann zippen, sondern direkt aus dem Speicher mehrere Dateien erstellen, die dann als eine zip auf der Platte landen sollen. Ich möchte also am besten eine zip-Datei anlegen und dann da direkt (Text-)Dateien reinschreiben können. Gibt es dafür in C# vorhandene, empfehlenswerte Bibliotheken?
lg Boldar


Ralf Jansen - Mi 23.04.14 21:17

Zum Beispiel per GZipStream [http://msdn.microsoft.com/de-de/library/system.io.compression.gzipstream(v=vs.110).aspx].
Im Beispiel in der MSDN wird zwar Filestream nach Filestream gezeigt aber man kann natürlich genauso einen Memorystream nehmen. Oder noch andere Streams dazwischenschalten z.B. einen Cryptostream wenn mann auch noch verschlüsseln will.