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

Каков механизм сохранения объекта в файл   Найти похожие ветки 

 
DVE   (2003-09-10 09:55) [0]

Есть переменная сласса ее нужно сохранить в файл или поток, точнее все свойства, что-бы потом востановить.

Надеюсь кто-то этим уже занимался! Благодарю

type TMyObj = class(TObject)
ID : integer;

public
vList : TStringList;
constructor Create; ovveride;
destructor Destroy;
end;

...............................

procedure x;
var v,d : TMyObj;
begin

v := TMyObj.Create;
v.vList.Add("sssss");

сохранить в поток

v.Free;
d := TMyObj.Create;

загрузить из потока в d

ShowMessage(d.vList.Strings[0]);

end;


 
Digitman ©   (2003-09-10 10:04) [1]

procedure TMyObj.SaveToStream(Stream: TStream);
begin
Stream.Write(ID, SizeOf(ID));
vList.SaveToStream(Stream);
end;

procedure TMyObj.LoadFromStream(Stream: TStream);
begin
Stream.Read(ID, SizeOf(ID));
vList.LoadToStream(Stream);
end;


 
HolACost! ©   (2003-09-10 10:06) [2]

т.е. по свойствам!


 
DVE   (2003-09-10 10:22) [3]

Понял! попробую!


 
Erik   (2003-09-10 10:39) [4]

Вобщето лучше пользоватся готовыми решениями, Delphi есть клас TComponent унаследованый от TPersistent он умеет себя сохранять в поток. DFM форма это просто бинарный ресурс куда сохранены свойства объектов. Если хочется сохранять TObject то можно воспользоватся готовой библиотекой
http://chris.lichti.org/Lab/RTTI_Lib/RTTI_Lib.shtml
Там RTTI используется.



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

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



Память: 0.45 MB
Время: 0.018 c
1-71581
V.exeR
2003-09-10 04:13
2003.09.22
Drag&Drop в TTreeView


3-71556
Russko
2003-08-29 13:15
2003.09.22
Работа с TTable


8-71761
servs
2003-05-24 18:34
2003.09.22
Resize картинки


3-71468
PaveL
2003-08-28 21:32
2003.09.22
ClientDataSet и ftListBox


14-71865
МаХиМ
2003-09-02 18:02
2003.09.22
Как создать заставку для программы?




   Наверх