Вниз
Скачать: CL | DM;

Помогите плз. ссылкой или кодом   Найти похожие ветки 

← →
don-do   (2004-07-30 07:48) [0]

нужно сохранять данные DataSet`а в поток и обратно, пока разбираюсь с внутренностями, но нужно шоб работало вчера.


← →
Digitman ©   (2004-07-30 09:37) [1]


> нужно шоб работало вчера


то что работало вчера, вовсе необязательно будет работать завтра


> сохранять данные DataSet


возьми за базовый класс TClientDataSet, он есть наследник TDataSet и у него есть готовые методы SaveTo/LoadFromStream


← →
don-do   (2004-07-30 14:22) [2]

Спасибо я уже написал, если кому-нить интересно:

procedure TMyDataset.SaveToStream(Stream: TStream);
var
 Buffer: PChar;
 BufSize: Word;
 I: Integer;
begin
 CheckActive;
 BufSize := GetRecordSize;
 Stream.Size := RecordCount * BufSize + Stream.Size;
 Stream.Position := 0;
 For I := 0 to RecordCount - 1 do
 begin
   RecNo := I + 1;
   Buffer := GetActiveBuffer;
   Stream.WriteBuffer(Buffer^,BufSize);
 end;
end;

procedure TMyDataset.LoadFromStream(Stream: TStream);
var
 Buffer: PChar;
 BufSize: Word;
begin
 CheckActive;
 BufSize := GetRecordSize;
 While Stream.Position < Stream.Size do
 begin
   Append;
   Buffer := GetActiveBuffer;
   Stream.ReadBuffer(Buffer^,BufSize);
   Post;
 end;
end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.028 c
14-1091620761
:-(
2004-08-04 15:59
2004.08.22
Lan


11-1079260233
hammer
2004-03-14 13:30
2004.08.22
Вставка текста в memo


14-1091433251
Rouse_
2004-08-02 11:54
2004.08.22
If the function succeeds, the return value is nonzero


3-1090902055
Morj
2004-07-27 08:20
2004.08.22
Программно выделить строки в DBGrid


1-1092129434
Урфин Джус
2004-08-10 13:17
2004.08.22
Создание/запись бинароного файла




   Наверх