01. februar 2005 - 12:12Der er
17 kommentarer og 1 løsning
Pakke filer ned på en webserver
Hejsa
Er der nogen der ved om det kan lade sig gøre at pakke filer ned på en webserver via et script af en eller anden form. Men der må ikke bruges nogen komponenter der skal installeres på serveren, da denne ikke er min.
Jeg bruger normalet ASP og et webhotel. Det er her jeg gerne vil pakke nogle filer ned en gang imellem.
Du skal jo have en komponent installeret, og den mener jeg du kan købe på ..... hvor er det man kan købe ASPImage, ASPUpload m.m? Prøver lige at finde det.
Den C#-ting, jeg omtalte er netop en komponent, ICSharpCode.SharpZipLib, som vist skal købes, så den får du nok heller ikke lov til at installere, men kan du ikke klare det ved at ftp'e det hjem og så komprimere det ?-)
jeg har ICSharpCode.SharpZipLib da den er gratis. Men jeg har også fundet ud af at man måske kan gøre det med den uden at installere den. Men jeg mangler bare et eks. på en aspx fil hvor den bruger SharpZipLib. Så hvis du har det, vil det være super.
Jo det med at ftp det hjem og zippe det, bliver min nød plan hvis det andet ikke virker.
private static string CreateZipFile(string filename) { Crc32 crc = new Crc32(); Regex reg = new Regex(@".log$",RegexOptions.IgnoreCase); string newFile = reg.Replace(filename,".zip"); ZipOutputStream s = new ZipOutputStream(File.Create(newFile));
s.SetLevel(9); // 0 - store only to 9 - means best compression
FileStream fs = File.OpenRead(filename);
byte[] buffer = new byte[fs.Length]; fs.Read(buffer, 0, buffer.Length); ZipEntry entry = new ZipEntry(filename);
entry.DateTime = DateTime.Now;
// set Size and the crc, because the information // about the size and crc should be stored in the header // if it is not set it is automatically written in the footer. // (in this case size == crc == -1 in the header) // Some ZIP programs have problems with zip files that don't store // the size and crc in the header. entry.Size = fs.Length; fs.Close();
crc.Reset(); crc.Update(buffer);
entry.Crc = crc.Value;
s.PutNextEntry(entry);
s.Write(buffer, 0, buffer.Length);
s.Finish(); s.Close(); return newFile;
} }
-- jeg bruger det til at pakke enkeltfiler, så den er ret simpelt opbygget !-)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.