begin process at 2012 02 16 00:36:36
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Compression & Split

 > UNZIP EN VB.NET

UNZIP EN VB.NET


 Information sur la source

Note :
9,33 / 10 - par 3 personnes
9,33 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Compression & Split Source .NET ( DotNet ) Niveau :Débutant Date de création :04/03/2004 Date de mise à jour :11/03/2004 21:51:01 Vu / téléchargé :16 231 / 1 159

Auteur : damasta

Ecrire un message privé
Commentaire sur cette source (16)
Ajouter un commentaire et/ou une note

 Description

J'ai longuement cherché pour un moyen efficace de dézipper en VB.Net et finalement j'ai réussi à en faire fonctionner un. En fait, je ne suis pas véritablement l'auteur de ce code, le mérite va à gg00xiv, je n'ai fait que traduire une de ses sources pour déziper qui était  en C# vers le VB.net et j'ai un peu ajusté certaines choses pour la rendre compatible.

Source

  • Public Sub ExtractArchive(ByVal zipFilename As String, ByVal ExtractDir As String)
  • Dim Redo As Integer = 1
  • Dim MyZipInputStream As ZipInputStream
  • Dim MyFileStream As FileStream
  • MyZipInputStream = New ZipInputStream(New FileStream(zipFilename, FileMode.Open, FileAccess.Read))
  • Dim MyZipEntry As ZipEntry = MyZipInputStream.GetNextEntry
  • Directory.CreateDirectory(ExtractDir)
  • While Not MyZipEntry Is Nothing
  • If (MyZipEntry.IsDirectory) Then
  • Directory.CreateDirectory(ExtractDir & "\" & MyZipEntry.Name)
  • Else
  • If Not Directory.Exists(ExtractDir & "\" & Path.GetDirectoryName(MyZipEntry.Name)) Then
  • Directory.CreateDirectory(ExtractDir & "\" & Path.GetDirectoryName(MyZipEntry.Name))
  • End If
  • MyFileStream = New FileStream(ExtractDir & "\" & MyZipEntry.Name, FileMode.OpenOrCreate, FileAccess.Write)
  • Dim count As Integer
  • Dim buffer(4096) As Byte
  • count = MyZipInputStream.Read(buffer, 0, 4096)
  • While count > 0
  • MyFileStream.Write(buffer, 0, count)
  • count = MyZipInputStream.Read(buffer, 0, 4096)
  • End While
  • MyFileStream.Close()
  • End If
  • Try
  • MyZipEntry = MyZipInputStream.GetNextEntry
  • Catch ex As Exception
  • MyZipEntry = Nothing
  • End Try
  • End While
  • If Not (MyZipInputStream Is Nothing) Then MyZipInputStream.Close()
  • If Not (MyFileStream Is Nothing) Then MyFileStream.Close()
  • End Sub
Public Sub ExtractArchive(ByVal zipFilename As String, ByVal ExtractDir As String)
        Dim Redo As Integer = 1
        Dim MyZipInputStream As ZipInputStream
        Dim MyFileStream As FileStream
        MyZipInputStream = New ZipInputStream(New FileStream(zipFilename, FileMode.Open, FileAccess.Read))
        Dim MyZipEntry As ZipEntry = MyZipInputStream.GetNextEntry
        Directory.CreateDirectory(ExtractDir)
        While Not MyZipEntry Is Nothing
            If (MyZipEntry.IsDirectory) Then
                Directory.CreateDirectory(ExtractDir & "\" & MyZipEntry.Name)
            Else
                If Not Directory.Exists(ExtractDir & "\" & Path.GetDirectoryName(MyZipEntry.Name)) Then
                    Directory.CreateDirectory(ExtractDir & "\" & Path.GetDirectoryName(MyZipEntry.Name))
                End If
                MyFileStream = New FileStream(ExtractDir & "\" & MyZipEntry.Name, FileMode.OpenOrCreate, FileAccess.Write)
                Dim count As Integer
                Dim buffer(4096) As Byte
                count = MyZipInputStream.Read(buffer, 0, 4096)
                While count > 0
                    MyFileStream.Write(buffer, 0, count)
                    count = MyZipInputStream.Read(buffer, 0, 4096)
                End While
                MyFileStream.Close()
            End If
            Try
                MyZipEntry = MyZipInputStream.GetNextEntry
            Catch ex As Exception
                MyZipEntry = Nothing
            End Try
        End While
        If Not (MyZipInputStream Is Nothing) Then MyZipInputStream.Close()
        If Not (MyFileStream Is Nothing) Then MyFileStream.Close()
    End Sub

 Conclusion

Une libraire externe a été utilisée : http://www.icsharpcode.net/OpenSource/SharpZipLib/ default.asp

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources de la même categorie

Source avec Zip Source .NET (Dotnet) ZIP UNZIP DOSSIER (COMPRENANT FICHIER(S) ET SOUS DOSSIER(S))... par ManuOrange
Source avec Zip COMPRESSION / DECOMPRESSION SELON L'ALGORITHME LEMPELZIV 78V par th1man
Source .NET (Dotnet) DÉCOMPRESSER EN .NET PLUSIEURS FORMATS POPULAIRES D'ARCHIVAG... par NikatorS
Source .NET (Dotnet) DÉCODAGE YENC EN VB.NET par NINATECH
Source avec Zip Source avec une capture Source .NET (Dotnet) SEVENZIP CONSOLE par PWM63

Commentaires et avis

Commentaire de Urgo le 04/03/2004 22:00:10

Je viens de tester avec la librairie et ça marche du tonnere :)
10/10 pour l'avoir fait en .NET

Commentaire de claudetom le 05/03/2004 02:05:46

Je l'utilise aussi dans le source que j'ai fourni sur ce site Gestion loto
il marche très bien pour Unzipper et zipper

Commentaire de li9 le 11/03/2004 18:26:43

Super , comme j'ai la version 2002 de .net je peux même pas
lire le projet !
Bravo Microsoft !!

Commentaire de Urgo le 15/05/2004 00:12:10

li9, fallait pomper la bonne version lol

Commentaire de et1 le 04/05/2005 16:02:13

Bonjour
J'ai besoin d'aide car le projet ne fonctionne pas sur vb.net 2003 (du moins sur mon PC)

Voici les problèmes :

-non défini :
ZipZipInputStream
ZipInputStream
ZipEntry
-L'espace des nom ou le type zip pour les imports ... est introuvable :
Imports ICSharpCode.SharpZipLib.Zip

Donc la source ne peut pas fonctionner.

Pouvez-vous m'aider car j'aurais besoin de pouvoir décompresser les zip le plus rapidement

Merci

Commentaire de azerty99_71 le 29/06/2005 00:27:49

Poste plutot sur le forum ... tu as plus de chances de recevoir une réponse ...

Azerty99_71

Commentaire de et1 le 30/06/2005 10:37:26

C'est bon, le problème est réglé, c'est une erreur de références.
Merci

Commentaire de coulis le 21/02/2006 17:03:17

J'ai un problème avec le fichier compressé suivant  : "VOWPC190.tar.Z"
WinZip le decompresse sans problème. En utilisant la class ci-dessus j'ai l'erreur suivante : "Wrong Local header signature1452317983" dans mon navigateur Ie.
je dois décompresser ce type de fichier automatiquement sur un site web.
Il y a-t-il d'autres solutions ?

Merci

Commentaire de Gavial le 11/10/2006 16:24:51

Cool, je cherchais partout, merci pour ton taff.

Commentaire de ananiso le 11/03/2007 10:29:50

excellent, je viens de comprendre asp.net est ce kil y a klk1 pe m'aider avec un cour simple un pe svp?

Commentaire de floppeur le 16/04/2007 11:31:51

Très bien 9 sur 10, l’histoire est régler en deux coup de cuillère à pot… Cependant, il existe une classe dans le Framework 2.0…System.IO.Compression, pour info  

Commentaire de youssefino le 02/11/2007 14:49:04

JE SUIS ENCORE NOVICE en programmation et j'ai besoin de dezziper un fichier pour un projet ke j'ai à faire.
J'ai donc réccupérer tout bêtement le programme que tu as mis et j'ai fait un copier coller sur mùon ùmodule mais j'imagine ke j'ai pas mal de paramètres à changer.
Si vous pouviez prendre le temps de m'expliker ca serait très gentil


merci

Commentaire de zakariya_2201 le 16/06/2008 12:57:07

ok youssefino
je te consiel de telecharger le projet et essayer de comprendre le code pas a pas,
tu doit savoir d'abord:
               * C'est quoi une reference web a quoi il saire...
               * Comment l'importer pour travailler avec
               * un peu petit peu de courage et de motivation
et sa vien tout seul,et bonne chance

Commentaire de zakariya_2201 le 16/06/2008 13:00:03

une autre chose YOUSSEFINO, c mieux de faire le copier/coller sur un evenement clique du button directement pas sur le module

Commentaire de NikatorS le 20/03/2010 17:10:29 8/10

C'est un bon code.
Il manque juste la gestion d'un mot de passe et ça aurait été parfait.

Commentaire de danu le 10/08/2010 20:05:03

Salut,
Cela fonctionne très bien.
Quand je décompresse, mes fichiers prennent la date de création LastWriteTime (actuelle)et cela est un inconvénient pour mon log car j'ai besoin de la date de création des fichiers, je gère par la suite ces fichiers par rapport à cette date.
J'ai fait des recherches sans succès.
Est-ce possible avec sharpziplib unzip ?j'ai essayé sans trouver
les fichiers que je décompresse proviennent d'un serveur et quand je décompresse avec RAR ou winzip.. etc, j'ai bien les dates de création.
Si quelqu'un a une idée ??
Merci à l'avance.
Danu

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,655 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales