[yunqa.de] DIZipWriter: streaming question

  • From: "Yeoh Ray Mond" <yeohray@xxxxxxxxxxxx>
  • To: <yunqa@xxxxxxxxxxxxx>
  • Date: Tue, 9 Dec 2008 11:19:23 +0800

I'm looking at the DIZipWriter component and have a question re the streaming facility.


I have an application that interfaces with another 3rd party app. That 3rd party app sometimes sends the contents of a file to my app, in blocks of 1 MB. Presently, I use a TFileStream to write out the data to disk, as and when I receive the 1 MB blocks.

I would like to now compress the data before I write it out to disk. Can DIZipWriter do this, without me having to create the entire file first i.e.

- 3rd party app signals file to be sent
- my app prepares the archive
- 3rd party app sends first 1 MB block in a buffer
- I pass the block to DIZipWriter for compression (and output?)
- 3rd party app sends next 1 MB block, and same cycle repeats
- 3rd party app signals that file has been completely sent
- my app then calls DIZipWriter to finalize the archive

Is this possible using DIZipWriter? The file that is sent can range anywhere from 4 MB to hundreds of GBs, which is why I would like to be able to compress it.

Thanks.


Ray Mond
_______________________________________________
Delphi Inspiration mailing list
yunqa@xxxxxxxxxxxxx
//www.freelists.org/list/yunqa



Other related posts: