如何在TDateTime中转换TValue?
我看到有像AsInteger,AsDouble等方法,但TDateTime没有。
var
c : TRttiContext;
t : TRttiType;
f : TRttiField;
fieldValue : TValue;
fieldDateValue : TDateTime;
begin
c := TRttiContext.Create;
t := c.GetType(Self.ClassType);
for f in t.GetFields do begin
fieldValue := field.GetValue(Self);
//convert the TValue in TDateTime
end;
end;
答案 0 :(得分:4)
具体的AsXXX
方法(如AsInteger
)只是某些内在类型的快捷方式(有些也是针对特定类型的优化实现的)。
但要从TValue
获取任何类型,您可以使用AsType<T>
方法。