关于OmniXML似乎有很大的热情,但是omnixml.com处于离线状态且Google Code项目是空的.这个库发生了什么,我在哪里可以找到代码(因为它是开源的)?
问题或多或少都说明了一切.鉴于以下记录结构:
type
TPerson = record
Name: string;
Age: Integer;
end;
PPerson = ^TPerson;
TPersonList = TList<TPerson>;
Run Code Online (Sandbox Code Playgroud)
以下代码是否有效?
procedure ReadPeople(DataSet: TDataSet; PersonList: TPersonList);
begin
PersonList.Count := DataSet.RecordCount;
if DataSet.RecordCount = 0 then
Exit;
DataSet.First;
while not DataSet.Eof do begin
PersonList[DataSet.RecNo].Name := DataSet.FieldByName('Name').AsString;
PersonList[DataSet.RecNo].Age := DataSet.FieldByName('Age').AsInteger;
DataSet.Next;
end;
end;
Run Code Online (Sandbox Code Playgroud)
我是否必须使用GetMem/ FreeMem分配和释放记录的实例TPersonList,或者我是否可以直接直接访问TPersonList条目?我的直觉说代码应该是有效的,虽然我不确定是否有任何与记录初始化或完成相关的皱纹.
我想知道是否有任何可用于Delphi XE-2的开源组件可以连接到postgreSQL,而不是使用像ODBC这样的过时技术.
目前只需要Win32支持,但如果Win64和OS-X支持也可用,这将是一个奖励.
我google了一下,但唯一可用的库(ZEOS)看起来已经不再处于活跃开发阶段了.
似乎有一个Delphi XE2补丁,但我无法编译.