17. marts 2005 - 18:03
Der er
13 kommentarer og 1 løsning
Winrar og Zip
Hejsa... Kan man pakke en zip eller rar fil ud via C#? Mvh. PabloPablo
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
17. marts 2005 - 18:06
#1
ZIP no problem - hent SharpZipLib komponentetn og så kører det RAR - måske et problem
17. marts 2005 - 18:06
#2
17. marts 2005 - 18:42
#3
Super ;) spurgte kun efter rar pga. det kan komprimeres mere end zip...
17. marts 2005 - 18:45
#4
så ligger jeg et svar
20. marts 2005 - 00:14
#5
hvilken metode bruger du når du skal udpakke en zip fil...?
20. marts 2005 - 00:30
#6
Eksempel: using System; using System.Collections; using System.IO; using ICSharpCode.SharpZipLib.Zip; class MainClass { public static void Main(string[] args) { ZipFile zf = new ZipFile(@"C:\temp\test.zip"); IEnumerator e = zf.GetEnumerator(); while(e.MoveNext()) { ZipEntry ze = (ZipEntry)e.Current; Stream istm = zf.GetInputStream(ze); Stream ostm = new FileStream(@"C:\temp\" + ze.Name, FileMode.CreateNew, FileAccess.Write); int size = (int)ze.Size; byte[] b = new byte[size]; istm.Read(b, 0, size); ostm.Write(b, 0, size); } zf.Close(); } }
20. marts 2005 - 00:31
#7
Eksemplet forudsætter at al data kan være i memory. Ellers skal der lige en while løkke mere ind.
20. marts 2005 - 01:19
#8
ok, mange tak for det...det var også noget i den duer jeg var gået i gang med, men havde ikke fået det til at spille endnu... når skal jeg ikke pakke meget store filer ud...men det kunne måske være meget godt at have med for en sikkerhedsskyld...hvordan vil den ekstra løkke se ud i dette tilfælde..?
20. marts 2005 - 11:20
#9
using System; using System.Collections; using System.IO; using ICSharpCode.SharpZipLib.Zip; class MainClass { public static void Main(string[] args) { ZipFile zf = new ZipFile(@"C:\temp\test.zip"); IEnumerator e = zf.GetEnumerator(); while(e.MoveNext()) { ZipEntry ze = (ZipEntry)e.Current; Stream istm = zf.GetInputStream(ze); Stream ostm = new FileStream(@"C:\temp\" + ze.Name, FileMode.CreateNew, FileAccess.Write); byte[] b = new byte[100000]; int n; while((n = istm.Read(b, 0, b.Length)) > 0) { ostm.Write(b, 0, n); } } zf.Close(); } }
20. marts 2005 - 18:19
#10
jamen, virker jo :) mange tak for det!! læg et svar og få endnu en gang dine fortjente points ;)
20. marts 2005 - 18:21
#11
Dem har jeg fået for lang tid siden ...
20. marts 2005 - 19:45
#12
hehe, ja det er da også rigtigt ;)
23. marts 2005 - 14:36
#13
jeg tænkte på, kan den også udpakke filer som er beskyttet med et password ...? og i så fald, hvordan ser det ud...?
23. marts 2005 - 15:34
#14
Ingen anelse. Prøv og læs docs på SharpZipLib !
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.