Çok Yakında Yeni Bir Arayüzle karşınızdayız! http://yeni.delphican.com/

Konuyu Oyla:
  • Derecelendirme: 4/5 - 1 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Dosya sıkıştırma (ZLIB ile)
#1
Selam, dosya sıkıştırma ile alakalı işi bilen arkadaşlara danışmak istiyorum.
Ben şu anda aşağıdaki şekilde kullanıyorum, fakat öğrenmek istediğim bunun daha hızlı bir yolu varmıdır?
uses zlib;

procedure CompressStream(inpStream, outStream: TStream);
var
 InpBuf, OutBuf: Pointer;
 InpBytes, OutBytes: Integer;
begin
 InpBuf := nil;
 OutBuf := nil;
 try
   GetMem(InpBuf, inpStream.Size);
   inpStream.Position := 0;
   InpBytes := inpStream.Read(InpBuf^, inpStream.Size);
   CompressBuf(InpBuf, InpBytes, OutBuf, OutBytes);
   outStream.Write(OutBuf^, OutBytes);
 finally
   if InpBuf <> nil then FreeMem(InpBuf);
   if OutBuf <> nil then FreeMem(OutBuf);
 end;
end;

procedure DecompressStream(inpStream, outStream: TStream);
var
 InpBuf, OutBuf: Pointer;
 OutBytes, sz: Integer;
begin
 InpBuf := nil;
 OutBuf := nil;
 sz     := inpStream.Size - inpStream.Position;
 if sz > 0 then
   try
     GetMem(InpBuf, sz);
     inpStream.Read(InpBuf^, sz);
     DecompressBuf(InpBuf, sz, 0, OutBuf, OutBytes);
     outStream.Write(OutBuf^, OutBytes);
   finally
     if InpBuf <> nil then FreeMem(InpBuf);
     if OutBuf <> nil then FreeMem(OutBuf);
   end;
 outStream.Position := 0;
end;

//Kullanımı
var
eski, yeni : TMemoryStream;
begin
 eski := TMemoryStream.Create;
 eski.LoadFromFile('c:\yedeklenecek.dosya');
 yeni := TMemoryStream.Create;
 CompressStream(eski,yeni);
 yeni.SaveToFile('xxx.ydk');
 eski.Free;
 yeni.Free;
end
WWW
Cevapla


Bu Konudaki Yorumlar
Dosya sıkıştırma (ZLIB ile) - Yazar: esistem - 21-09-2016, Saat: 17:33
Dosya sıkıştırma (ZLIB ile) - Yazar: engerex - 21-09-2016, Saat: 17:52
Dosya sıkıştırma (ZLIB ile) - Yazar: esistem - 21-09-2016, Saat: 17:52
Dosya sıkıştırma (ZLIB ile) - Yazar: engerex - 21-09-2016, Saat: 22:40
Dosya sıkıştırma (ZLIB ile) - Yazar: esistem - 22-09-2016, Saat: 09:45
Dosya sıkıştırma (ZLIB ile) - Yazar: engerex - 26-09-2016, Saat: 16:07
Dosya sıkıştırma (ZLIB ile) - Yazar: esistem - 26-09-2016, Saat: 16:12
Dosya sıkıştırma (ZLIB ile) - Yazar: yhackup - 26-09-2016, Saat: 17:36
Dosya sıkıştırma (ZLIB ile) - Yazar: engerex - 26-09-2016, Saat: 18:27
Dosya sıkıştırma (ZLIB ile) - Yazar: esistem - 26-09-2016, Saat: 18:39
Dosya sıkıştırma (ZLIB ile) - Yazar: esistem - 27-09-2016, Saat: 09:08
Cvp: Dosya sıkıştırma (ZLIB ile) - Yazar: yhackup - 27-09-2016, Saat: 09:16
Dosya sıkıştırma (ZLIB ile) - Yazar: esistem - 27-09-2016, Saat: 09:39

Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  WebDav ile Yandex Diskten Klasör ve Dosya Listesi Alma theSinan 2 96 13-02-2020, Saat: 19:58
Son Yorum: theSinan
  TByteDynArray'den Dosya Oluşturma enes6635 9 1.167 16-01-2020, Saat: 09:20
Son Yorum: SimaWB
  Datasnap büyük dosya gönderme sorunu. seci20 2 259 12-01-2020, Saat: 14:56
Son Yorum: seci20
  AbZipper ile Sıkıştırma Süresi theSinan 2 397 17-09-2019, Saat: 19:57
Son Yorum: theSinan
  Urlden Dosya İndirme apachi2006 0 350 26-08-2019, Saat: 01:54
Son Yorum: apachi2006



Konuyu Okuyanlar: 1 Ziyaretçi