Delphi array of TVarRec类型使用方法

array of TVarRec  //代表传递的动态数组中元素的类型可变,数组大小可变个数可变,网上这个真找不到可以使用的教程。自己摸索了很久才找到了使用方法。

正常都是像下面这样手工添加

Dataset.AppendRecord([1, '张三', 33, True]);

如果要自动添加要怎么操作,查了一下AppendRecord的参数是(TVarRec[])

const Values: array of const

const Values: array of TVarRec

 

TVarRec 可变类型可变长度 参数

用法如下:

var
param:array of TVarRec;
SetLength(param,4);
param[0].VType:=VTInteger;
param[0].VInteger:=18;
param[1].VType:=vtPChar;
param[1].VpChar:=PAnsiChar('TestBinary');
// param[2].VType:=VtInteger;
param[2].VInteger:=288;
param[3].VType:=VtBoolean;
param[3].VBoolean:=FALSE;
dsTemp.AppendRecord(param);

循环体中用法:

var
param: array of TVarRec;
--------------------------------------
SetLength(param,Dataset.FieldCount);
for k := 0 to Dataset.FieldCount - 1 do
begin
sValue := jf.AsObject.GetValues.AsArray[k].AsString; //取DATA节点下的字段值
param[K].VType:=vtPWideChar;
param[K].VPWideChar:=PChar(sValue);
// Dataset.FieldByName(ColList[k]).AsString := sValue;
// Dataset.Fields[k].Value:=sValue; //上下两种速度是一样的
end;
Dataset.AppendRecord(param);

 

posted @   IT情深  阅读(209)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示