vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
VB.NET - Zippen 
Autor: mullfreak
Datum: 04.11.08 19:21

Hi,
ich will eine Datei zippen und verwende einen Tip von Dieter: http://www.icsharpcode.net/opensource/sharpziplib/Download.aspx
Aus den Samples hab ich mir etwas Code gebastelt:

Imports System
Imports System.IO
Imports System.Drawing
Imports System.Windows.Forms
 
Imports ICSharpCode.SharpZipLib.Core
Imports ICSharpCode.SharpZipLib.Zip
 
Public Class Form1
 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button1.Click
        If FolderBrowserDialog.ShowDialog() = Windows.Forms.DialogResult.OK Then
            TextBox1.Text = FolderBrowserDialog.SelectedPath
        End If
    End Sub
 
 
 
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button2.Click
        Dim sourceDir As String = TextBox1.Text.Trim()
 
        ' Simple sanity checks
        If sourceDir.Length = 0 Then
            MessageBox.Show("Please specify a directory")
            Return
        Else
            If Not Directory.Exists(sourceDir) Then
                MessageBox.Show(sourceDir, "Directory not found")
                Return
            End If
        End If
 
        Dim targetName As String = TextBox2.Text.Trim()
        If targetName.Length = 0 Then
            MessageBox.Show("No name specified", "Zip file name error")
            Return
        End If
 
        Dim astrFileNames() As String = Directory.GetFiles(sourceDir)
        Dim strmZipOutputStream As ZipOutputStream
 
        strmZipOutputStream = New ZipOutputStream(File.Create(targetName))
 
        REM Compression Level: 0-9
        REM 0: no(Compression)
        REM 9: maximum compression
        strmZipOutputStream.SetLevel(9)
 
        Dim strFile As String
 
        For Each strFile In astrFileNames
            Dim strmFile As FileStream = File.OpenRead(strFile)
            Dim abyBuffer(strmFile.Length - 1) As Byte
 
            strmFile.Read(abyBuffer, 0, abyBuffer.Length)
            Dim objZipEntry As ZipEntry = New ZipEntry(strFile)
 
            objZipEntry.DateTime = DateTime.Now
            objZipEntry.Size = strmFile.Length
            strmFile.Close()
            strmZipOutputStream.PutNextEntry(objZipEntry)
            strmZipOutputStream.Write(abyBuffer, 0, abyBuffer.Length)
 
        Next
 
        strmZipOutputStream.Finish()
        strmZipOutputStream.Close()
 
        MessageBox.Show("Operation complete")
    End Sub
 
 
End Class
Ich kann jetzt also einen Namen für das Zip-File angeben, ein Source-Dir auswählen und mit einem Button loslegen. Es kommt dann die Msg-Box "Operation complete", aber das ZIP-File ist nirgends zu finden.

Bin für jede Hilfe dankbar.

Gruß
Mull
0
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
VB.NET - Zippen1.460mullfreak04.11.08 19:21
Re: VB.NET - Zippen857icetea12304.11.08 20:16
Re: VB.NET - Zippen834icetea12304.11.08 21:15
Re: VB.NET - Zippen855mullfreak04.11.08 21:42
Re: VB.NET - Zippen835mullfreak04.11.08 22:35
Re: VB.NET - Zippen866mudla05.11.08 08:32

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel