Laden...

Per C# Zip-Dateien packen und entpacken

Erstellt von Didii vor 19 Jahren Letzter Beitrag vor 19 Jahren 21.914 Views
D
Didii Themenstarter:in
78 Beiträge seit 2004
vor 19 Jahren
Per C# Zip-Dateien packen und entpacken

hallo,

welche wie kann man in c# dateien packen und entpacken (zippen)?

V
35 Beiträge seit 2004
vor 19 Jahren

Schau doch mal unter http://www.icsharpcode.net/OpenSource/SharpZipLib/Default.aspx

Dort gibt es eine Zip Bibliothek, die das kann. Ist sogar OpenSource!

D
Didii Themenstarter:in
78 Beiträge seit 2004
vor 19 Jahren

Gibt es keine Klasse oder Funktionen die von Haus aus für das zippen gedacht sind?
weil der Link den du mir geschickt hast, ist ja eine Bibliothek die nicht direkt zu .NET gehört oder?

V
35 Beiträge seit 2004
vor 19 Jahren

Hi,

Nein, da wüsste ich nichts. Hast du Gründe, dich nur auf das Framework zu beschränken?

N
4.644 Beiträge seit 2004
vor 19 Jahren

Original von Didii
Gibt es keine Klasse oder Funktionen die von Haus aus für das zippen gedacht sind?
weil der Link den du mir geschickt hast, ist ja eine Bibliothek die nicht direkt zu .NET gehört oder?

Es gibt keine Klassen in .NET welche eine Zip-Funktionalität besitzen.
Der Link von vi.p ist doch eine Zip Assembly, die Dir diese Funktionalität bietet.
Es muss auch eine API Funktion in Windows XP geben, aber wie die heißt kann ich Dir nicht sagen.

D
Didii Themenstarter:in
78 Beiträge seit 2004
vor 19 Jahren

Gründe dagegen habe ich nicht direkt, aber ich bin absoluter C# newbie und hab keine Ahnung wie man so was einbindet, verwendet, usw.
Habe bis jetzt ausser WindowsForms Anwendungen und einen WebService noch nichts in C# programmiert!!!

könnt ihr mir da evtl. ein bisschen weiterhelfen?
ich muss mir da was runterladen oder? und dann?

D
Didii Themenstarter:in
78 Beiträge seit 2004
vor 19 Jahren
gründe dagegen

habe jetzt doch Gründe dagegen!!!
mein Projektleiter meinte, GPL iste keine so gute idee!
weiß zwar ned genau warum, aber wahrscheinlich weil die Software verkauft wird.
Weiß wirklich niemand was unter c# direkt????

*verzweifel*

H
704 Beiträge seit 2003
vor 19 Jahren

Original von Didii
habe jetzt doch Gründe dagegen!!!
mein Projektleiter meinte, GPL iste keine so gute idee!
weiß zwar ned genau warum, aber wahrscheinlich weil die Software verkauft wird.
Weiß wirklich niemand was unter c# direkt????

*verzweifel*

auf der Website steht:

Bottom line In plain English this means you can use this library in commercial closed-source applications.

d.h. du solltest also keine Probleme mit closed-source/komerz. Software haben.....

[last.fm](http://www.last.fm/user/hauptmanAlpha/)
D
Didii Themenstarter:in
78 Beiträge seit 2004
vor 19 Jahren
Brauch hilfe bei ZipLib

hallo,

ich verwende jetzt die ZipLib klasse, hab es auch schon hin gekriegt ein Archiv zu packen, es an einen anderen Ort zu kopieren, aber entpacken kann ich es nicht.
Der Dokumentation entnehme ich dass das mit ZipInputStream Class funktioniert.
Dort ist auch folgendes Beispiel:

d
using System;
using System.Text;
using System.IO;       
using NZlib.Zip;
           
class MainClass
{
    public static void Main(string[] args)
    {
         ZipInputStream s = new ZipInputStream(File.OpenRead(args[0]));
            		
         ZipEntry theEntry;
         while ((theEntry = s.GetNextEntry()) != null) {
         int size = 2048;
         byte[] data = new byte[2048];
            			
           Console.Write("Show contents (y/n) ?");
           if (Console.ReadLine() == "y") {
            while (true) {
            	size = s.Read(data, 0, data.Length);
            	if (size > 0) {
            	    Console.Write(new ASCIIEncoding().GetString(data, 0, size));
            	} else {
            	    break;
                }
            }
            }
         }
         s.Close();
}


Kann mir das jemand genauer erklären? was macht er mit "Console.Write(new ASCIIEncoding()....???
Heisst das er gibt was auf der Konsole aus?? oder versteh ich da wieder was falsch?
was genau in diesem Codefragment entpackt die Dateien?? 🙁

S
30 Beiträge seit 2003
vor 19 Jahren

Hi,

Ja er gibt etwas in der Console aus.

Erst fragt er ob der Inhalt (contents) ausgegeben werden soll, wenn du nun y in die Console ausgibst wird er dir den Inhalt ausgeben da sich ja meist meherere Dateien in einem Zip befinden wird das ganze mit ner Schleife gemacht.

mfG
Streamer

D
Didii Themenstarter:in
78 Beiträge seit 2004
vor 19 Jahren

ja er gibt was auf der Console aus, ich brauch das aber nicht, wie extrahiere ich nun die Dateien??
Das kann ich nämlich dem Stück Quellcode nicht entehmen!!

S
30 Beiträge seit 2003
vor 19 Jahren

Hi,

kannst du mal die Website posten wo du die ZipLib Klasse her hast ?

so long
Streamer

EDIT
sry shat sich erledigt

D
Didii Themenstarter:in
78 Beiträge seit 2004
vor 19 Jahren

http://www.icsharpcode.net/OpenSource/SharpZipLib/

hier hab ich sie downgeloadet, das Manual ist da auch dabei!

S
30 Beiträge seit 2003
vor 19 Jahren

http://www.carto.ca/

Hier kann man sich ein fertiges Zip prog welches ZipLib nutzt downloaden (mit Quellcode)

In der Klasse FileDataTag findest du die Methode

extractAllFromZipFile
und
extractItemFromZipFile

ich denke mal das ist das was du suchst

D
Didii Themenstarter:in
78 Beiträge seit 2004
vor 19 Jahren

habe mir den SourceCode runtergeladen, finde aber die beiden Methoden nicht in der klasse!

Kannst du mir evtl. die 1. Methode posten? ich glaube da dürfte das drinnen stehen was ich brauche.

thx

R
66 Beiträge seit 2004
vor 19 Jahren

Die Funktion findest du in der Klasse "ZipForm.cs" bei Zeile 1672 (zumindest is es bei mir so) .

lg
michi

D
Didii Themenstarter:in
78 Beiträge seit 2004
vor 19 Jahren

der extrahiert die Dateien mit hilfe eines FileStream Objekts.
Dazu ist aber der name der jeweiligen Datei nötig. Ich weiß die Namen der Datei im ZipArchiv nicht! gibt es da eine andere Möglichkeit die Dateien zu extrahieren???

S
30 Beiträge seit 2003
vor 19 Jahren

Hi,

hiermit werden doch ALLE dateien entpackt:

extractAllFromZipFile

D
Didii Themenstarter:in
78 Beiträge seit 2004
vor 19 Jahren

schon, aber er verwendet trotzedem die Namen der Dateien, die ich nicht habe!!!

D
Didii Themenstarter:in
78 Beiträge seit 2004
vor 19 Jahren

Mein Problem hat sich erledigt, habs endlich geschafft.

danke für eure vielen Posts
👍

49 Beiträge seit 2005
vor 19 Jahren
code von carto.ca

hi,

kann von euch jmd bitte mal den code des zip prg's auf der dl-db posten oder mir anderweitig zukommen lassen. bei mir geht der download nicht.

danke
tomuc

Das Leben ist ein scheiß Spiel, aber die Grafik ist gut.

M
456 Beiträge seit 2004
vor 19 Jahren

Oder .NET Framework 2.0 benutzen 😉
Da ist Deflate und GZip mit drinn.

I am Jack's smirking revenge.
I am Jack's raging bile duct.
I am Jack's cold sweat.
I am Jack's complete lack of surprise.
I am Jack's broken heart.
I am Jack's wasted life.