Zip Datei packen- und entpacken

  • Allgemein

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von Erown.

    Zip Datei packen- und entpacken

    Hallo zusammen,

    ich wähle einen Ordner über BrowseFolder aus und möchte diesen als Zip packen. ich verwende eine geladene DLL und zwar die ..
    ICSharpCode.SharpZipLib
    Das funktioniert soweit auch mit diesem Quellcode

    Quellcode

    1. Private Sub BtnBrowseForFolderClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBrowseForFolder.Click
    2. If FolderBrowserDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
    3. txtSourceDir.Text = FolderBrowserDialog1.SelectedPath
    4. End If
    5. End Sub
    6. Private Sub btnZipIt_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnZipIt.Click
    7. Dim sourceDir As String = txtSourceDir.Text.Trim()
    8. Dim path As String
    9. path = txtSourceDir.Text & " Archiv.zip "
    10. If sourceDir.Length = 0 Then
    11. MsgBox("Bitte einen Ordner auswählen", MsgBoxStyle.Critical)
    12. Return
    13. Else
    14. If Not Directory.Exists(sourceDir) Then
    15. MsgBox("Das ausgewählte Verzeichnis exsistiert nicht", MsgBoxStyle.Critical)
    16. Return
    17. End If
    18. End If
    19. Dim astrFileNames() As String = Directory.GetFiles(sourceDir)
    20. Dim strmZipOutputStream As ZipOutputStream
    21. strmZipOutputStream = New ZipOutputStream(file.Create(path))
    22. Try
    23. ' Krompimierungslevel Level: 0-9
    24. ' 0: keine Komprimierung
    25. ' 9: Maximale Komprimierung
    26. strmZipOutputStream.SetLevel(9)
    27. Dim strFile As String
    28. Dim abyBuffer(4096) As Byte
    29. For Each strFile In astrFileNames
    30. Dim strmFile As FileStream = file.OpenRead(strFile)
    31. Try
    32. Dim objZipEntry As ZipEntry = New ZipEntry(strFile)
    33. objZipEntry.DateTime = DateTime.Now
    34. objZipEntry.Size = strmFile.Length
    35. strmZipOutputStream.PutNextEntry(objZipEntry)
    36. StreamUtils.Copy(strmFile, strmZipOutputStream, abyBuffer)
    37. Finally
    38. strmFile.Close()
    39. End Try
    40. Next
    41. strmZipOutputStream.Finish()
    42. Finally
    43. strmZipOutputStream.Close()
    44. End Try
    45. MsgBox("Das Archiv wurde erstellt")
    46. End Sub


    Das Archiv erstellt er problemlos ... nun würde ich gern eine andere methode zum entpacken nehmen ...

    und zwar die Anleitung von mikeb69 --> [VB.NET] Zip-Datei ohne externe Tools entpacken.?

    Er erstellt zwar einen Ordner aber ohne inhalt ... die klasse ist unverändert ... daher schreib ich sie hier mal nicht rein

    Quellcode

    1. Private Sub btnBrowseFile_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBrowseFile.Click
    2. Using ofd As New OpenFileDialog
    3. With ofd
    4. .FileName = String.Empty
    5. .Filter = "ZipFile|*.zip"
    6. If ofd.ShowDialog = Windows.Forms.DialogResult.OK Then
    7. TextBox1.Text = .FileName
    8. files = ofd.FileName
    9. End If
    10. End With
    11. End Using
    12. End Sub
    13. Private Sub btnUnZip_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUnZip.Click
    14. Dim cu As New ClassUnzip(files, Path.Combine(Path.GetDirectoryName(files), "test_unzip_folder"))
    15. AddHandler cu.UnzipFinishd, AddressOf Unziped
    16. cu.UnzipNow()
    17. End Sub
    18. Private Sub Unziped()
    19. MessageBox.Show("fertig")
    20. End Sub


    Einen festgelegten Ort zu nehmen oder auch Try-catch hat leider mir nicht geholfen ...

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Gerry671“ ()

    was ist denn genau der fehler?

    also gibt er auch ne fehler meldung aus?

    hast du die Imports vieleicht vergessen?
    :P Mfg Aligator :P

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „aligator“ ()

    ich hab deinen code mit dem von mike verglichen.
    du hast ja nicht viel verändert.
    ich probier mal deinen code aus.#



    Edit:
    dein code geht bei mir OHNE probleme.
    hier mein testprojekt. probiers mal damit.
    Dateien
    :P Mfg Aligator :P

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „aligator“ ()