如何使用TJvAppXMLFileStorage将Delphi TObjectList类型序列化为
以前,为了保存某些应用程序的设置,我使用了:
>容器的TSettings = class(TPersistent) JvAppXMLFileStorage.WritePersistent(…); 但是现在,我正在使用TObjectList作为TSettings类中的属性. 如何序列化我的TObjectList<>与TJvAppXMLFileStorage? 解决方法
我通过调用JvAppXMLFileStorage.WriteList成功地用几行代码序列化了我的泛型列表.
首先,这是我序列化列表的方式. WriteGenericsObjectListItem< TMyClass>方法详述如下. JvAppXMLFileStorage.WriteList('mylist',TObject(MyGenericList),MyGenericList.Count,WriteGenericsObjectListItem<TMyClass>); 然后,我只需要定义如何序列化通用列表的每个项目.为此,我创建了一个通用方法: procedure TMySerializer.WriteGenericsObjectListItem<T>(Sender: TJvCustomAppStorage; const Path: string; const List: TObject; const Index: Integer; const ItemName: string); begin if(List is TObjectList<T>) then if Assigned(TObjectList<T>(List)[Index]) then Sender.WritePersistent(Sender.ConcatPaths([Path,Sender.ItemNameIndexPath (ItemName,Index)]),TPersistent(TObjectList<T>(List)[Index])); end; 而已! 我希望这可以帮到你! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |