169 похожих чатов

Подскажите, можно ведь комбинировать запись данных в один и тот

же Stream
через TFileStream и через TCompressionStream поочерёдно?
Ну т.е. часть данных мне нужно сжать, часть не нужно
В общем вначале нужно записать в несжатом виде размер буфера, который будет сжиматься, а затем уже сами сжатые данные
Чтобы при распаковке сразу выделить буфер нужного размера

4 ответов

9 просмотров
notme- Автор вопроса

Ну т.е. вот так вот - это окей? Запись: fs := TFileStream.Create(filename, fmCreate); fcs := TCompressionStream.Create(fs); fs.Write(size, 4); fcs.Write(buf, size); Чтение: fs := TFileStream.Create(filename, fmOpenRead); fds := TDecompressionStream.Create(fs); fs.Read(size, 4) p:=GetMem(size); fds.Read(pbyte(p)^, MaxInt);

notme- Автор вопроса
Александр (Rouse_) Багель
можно

Да ) Вот только-что тоже уже проверил, хотел написать )

notme
Да ) Вот только-что тоже уже проверил, хотел напис...

еслиб было нельзя всякие там ZIP архивы было бы сложновато создавать если их нельзя кусками стримить

Похожие вопросы

Обсуждают сегодня

type TObj = object procedure Init; virtual; end; TObj1 = object(TObj) procedure Init; override; end; procedure TObj1.Init; begin inherited; end; procedur...
Alexander 👋
29
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
45
А чем вам питонисты не угодили?😂
.
79
Господа и дамы, поможите пожалуйста :( Запускаю notepad.exe из делфи CreateProcess(nil, PChar(FullPath), nil, nil, False, NORMAL_PRIORITY_CLASS, nil, nil, StartInfo, ProcessI...
Ivan Burnatov
7
Язык Си можно выучить за день? По книжке ANSI C на 230 страниц
Vincent Vegan
29
Hello. Could you please help me with finding all coordinates within a radius using a spatial index, given that I have a table with coordinates? SET @lng = 37.57925; SET @lat ...
Rinchin G
7
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
I wrote frontend in flutter using dart. Where should I write backend?
𝐌𝐚𝐫𝐲
8
Не получается у меня либу Zstd статически слинковать, вылазят какие-то AV Вроде example у них не сложный есть, вроде всё делаю как там... но не выходит чего-то Вопрос - если ...
notme
4
{"fieldValue":[ {"title":"Alkmaar","coords":"52.62689992095562, 4.771862510168792","address":"Edisonweg 1","zip":"1821 BN","city":"Alkmaar","description":"ma-vr: 07:00-17:00"...
Marc Hoogstrate
6
Карта сайта