小弟在做一个程序,需要在数据库中把特征值读出来,然后跟采集到的样本比对。
现在我能把数据库的特征值读到并存在一个TMemoryStream中,但我比对函数定义的数据类型是oleVariant,
我无论用move(),还是copymemory(),都不能把TMemoryStream中的数据传到oleVariant中,
请问各位高手,怎么把TMemoryStream转换成oleVariant?
谢谢
现在我能把数据库的特征值读到并存在一个TMemoryStream中,但我比对函数定义的数据类型是oleVariant,
我无论用move(),还是copymemory(),都不能把TMemoryStream中的数据传到oleVariant中,
请问各位高手,怎么把TMemoryStream转换成oleVariant?
谢谢
olevariant -> string
参考这个链接中的第3个函数
找到一段代码:
function GetPeopleVariant(FPeople: TPeople): OleVariant;
var
p:PChar;
begin
Result:=VarArrayCreate([0,SizeOf(FPeople) - 1],VarByte);
p:=VarArrayLock(Result);
try
Move(FPeople, p^, SizeOf(FPeople));
finally
VarArrayUnlock(Result);
end;