Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Programmeren

[visual basic] iets unzippen? Ziplip?

Anoniem
None
11 antwoorden
  • Volgens deze site:
    http://www.vbprofs.com/Source_Codes/.NET/Zip%10Unzip_files_from_your_VB.NET_application/

    volstaan 3 regels om iets uit te pakken. Helaas wordt Ziplip niet herkent. Ik neem aan dat ik iets moet importen (a la import system.io) maar dat wordt helaas niet vermeld.

    Iemand enig idee hoe ik op een eenvoudige manier een .zip uitpak mbv visual basic (2008)?

    Windows kan het, dus neem aan dat ik geen 20 dll's nodig heb om een simpele archive te unzippen.
  • Wellicht heb je hier iets aan: http://www.info-zip.org/
  • door zoeken doet goed ;)
    http://www.codeproject.com/KB/cs/vmeasyzipunzip.aspx
  • [quote:cdcdcafeff="animaster"]door zoeken doet goed ;)
    http://www.codeproject.com/KB/cs/vmeasyzipunzip.aspx[/quote:cdcdcafeff]

    dat java.nogwat wordt pas in het 2e deel (compress) aangeroepen. Ik ben opzoek naar uncompress zegmaar. Kan dat daar ook mee dan?

    edit: add reference en dan die vsjlib lijkt niet veel te doen

    Probleem is dat de te downloaden file 22 mb is zonder zip en 4mb met zip… Niet te doen dus zonder compression.
  • Ik heb #ziplib wel eens gebruikt voor het unzippen van bestanden. Werkt prima, misschien is dat wel iets voor je.
  • ben niet zo'n programmeur geloof dat dat allemaal te ingewikkeld wordt:S.
  • [quote:fc60f3fa8c="sdk"]Volgens deze site:
    http://www.vbprofs.com/Source_Codes/.NET/Zip%10Unzip_files_from_your_VB.NET_application/

    volstaan 3 regels om iets uit te pakken. Helaas wordt Ziplip niet herkent. Ik neem aan dat ik iets moet importen (a la import system.io) maar dat wordt helaas niet vermeld.

    Iemand enig idee hoe ik op een eenvoudige manier een .zip uitpak mbv visual basic (2008)?

    Windows kan het, dus neem aan dat ik geen 20 dll's nodig heb om een simpele archive te unzippen.[/quote:fc60f3fa8c]
    zo te zien heb je een paar onderdelen nodig :
    = java.io
    = java.util.zip
    En de pagina geeft aan dat het onderdelen zijn van de J# assemblies.
    Heb je die taal/extensie misschien niet geinstalleerd op je pc omdat je alleen VB.Net hebt ?

    Overigens heb je daar een stukje prehistorische .Net-code te pakken lijkt het.
    Volgens het boek(*) dat ik voor me heb is het tegenwoordig nog makkelijker. Er is een GZipStream-klasse waarmee je bestanden kunt in- en uitpakken.

    Links :
    http://msdn.microsoft.com/en-us/library/system.io.compression.gzipstream.aspx



    (*) Microsoft .Net Framework Application Development Foundation Trainingkit (MCTS Exam 70-536)
    Hoofdstuk 2 les 2 om precies te zijn.
  • Thanks als dat werkt is het geweldig:D (die nieuwe methode, dat java.util.zip herkende visual basic niet).

    edit: hoe geef ik aan die Public Shared GZipCompress te gebruiken voor filename x ???
  • Hmm dit werkt half:
    [code:1:426e95b345]
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

    Dim bestandsnaam As String = "C:\test.zip"
    If File.Exists(bestandsnaam) Then
    GZipCompressDecompress(bestandsnaam)
    Else
    MessageBox.Show("bestaat ook niet")
    End If
    End Sub[/code:1:426e95b345]

    Het gaat goed want er staat de original size en de compressed size. En verder geen foutmeldingen maar… geen uitgepakte file op c :lol:!

    Vind nergens in de code waar hij het uitpakt/opslaat :? . Zou het graag aanpassen naar c:/test/
  • Er wordt een memorystream-klasse gebruikt voor de decompressie.
    Daarom zie je geen fysiek bestand.

    Als je die memorystream door een filestream vervangt ben je er al …

    Dus :
    [code:1:f347f43bd5]

    infile.Close()
    Dim ms As New MemoryStream()

    [/code:1:f347f43bd5]

    Vervangen door een filestream
    [code:1:f347f43bd5]

    infile.Close()
    Dim ms As New FileStream(targetfilename, FileMode.Create, FileAccess.Write, FileShare.Read)


    [/code:1:f347f43bd5]
    waarbij targetfilename dus voor jou "c:\test\blaat.extensie" is.

    (*) ik weet niet zeker wat de precieze parameters zijn die je naast .Create moet meegeven, maar dat moet je in visual studio via de help wel kunnen vinden denk ik.
  • Ok bedankt ik ga het eens proberen (ps what the… is er met de forum layout gebeurd :lol: ).

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.