Hallo ihr lieben
Ich möchte gerne Daten meines Programmes mithilfe der Zip Funktion des Net Frameworks sichern.
Dazu habe ich erstmal ein kleines Demo Projekt erstellt.
Im Debug Ordner der Demo habe ich folgende Verzeichnisstruktur gebastelt:
\test\
\test1\Neuer Ordner
\test1\zupackenderOrdner
Ich möchte nun den gesamtem Ordner test, sowie alle *.txt Dateien aus \test1\zupackenderOrdner in meiner Zip File auf dem Desktop haben.
Dabei soll aber die bisherige Verzeichnisstruktur erhalten bleiben - die Textdateien im "zupackenderOrdner" sollen also auch im zip File entsprechend in \test1\zupackenderOrdner liegen.
alle Textdateien in den entsprechenden Unterordner zu packen gelingt mir, theoretisch.
Die Code Zeile wird ohne gemecker ausgeführt, aber die Datei (bzw. nichtmal die Ordner) landen im zip.
Und wie füge ich einem manuell erzeugten Zip einen ganzen Ordner hinzu?
Hier der gesamte Code:
Auch wenn der Code mehr als überschaubar ist, lade ich mal die Solution hoch. Dann braucht ihr nix zum zippen erstellen.
Ich möchte gerne Daten meines Programmes mithilfe der Zip Funktion des Net Frameworks sichern.
Dazu habe ich erstmal ein kleines Demo Projekt erstellt.
Im Debug Ordner der Demo habe ich folgende Verzeichnisstruktur gebastelt:
\test\
\test1\Neuer Ordner
\test1\zupackenderOrdner
Ich möchte nun den gesamtem Ordner test, sowie alle *.txt Dateien aus \test1\zupackenderOrdner in meiner Zip File auf dem Desktop haben.
Dabei soll aber die bisherige Verzeichnisstruktur erhalten bleiben - die Textdateien im "zupackenderOrdner" sollen also auch im zip File entsprechend in \test1\zupackenderOrdner liegen.
alle Textdateien in den entsprechenden Unterordner zu packen gelingt mir, theoretisch.
Die Code Zeile wird ohne gemecker ausgeführt, aber die Datei (bzw. nichtmal die Ordner) landen im zip.
Und wie füge ich einem manuell erzeugten Zip einen ganzen Ordner hinzu?
Hier der gesamte Code:
VB.NET-Quellcode
- Imports System.IO.Compression
- Public Class Form1
- Private DesktopPath As String = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)
- Private ProgPath As String = Application.StartupPath
- Private Sub BTNCreatezip_Click(sender As Object, e As EventArgs) Handles BTNCreatezip.Click
- Using newFile = ZipFile.Open(DesktopPath & "\test.zip", ZipArchiveMode.Create)
- 'Hier soll der ganze Test Ordner gepackt werden
- newFile.CreateEntryFromFile(ProgPath & "\test\qwe.txt", "qwe.txt")
- 'folgende Zeile erhält Schleife für alle txt Dateien des Ordners
- newFile.CreateEntryFromFile(ProgPath & "\test1\zupackenderOrdner\asd.txt", "\test1\zupackenderOrdner\asd.txt")
- newFile.CreateEntry(ProgPath & "\test\")
- End Using
- End Sub
- End Class
Auch wenn der Code mehr als überschaubar ist, lade ich mal die Solution hoch. Dann braucht ihr nix zum zippen erstellen.