怎么判断variant是否有值,用empty和null都不可,这时此Variant的为$00000000 ( 积分: 20 )

  • 主题发起人 主题发起人 redcoffee
  • 开始时间 开始时间
R

redcoffee

Unregistered / Unconfirmed
GUEST, unregistred user!
我使用的是一个createdocument来创建一个XML对像,我使用selectsinlenode取其中某节点,当所取节点不存在时,返回的值variant的值在环境中跟踪为$00000000,如果判断此值,以确定未取到节点。此时varType得出的为vardispacth(9),取到值时也为此值。谢谢谢谢
 
我使用的是一个createdocument来创建一个XML对像,我使用selectsinlenode取其中某节点,当所取节点不存在时,返回的值variant的值在环境中跟踪为$00000000,如果判断此值,以确定未取到节点。此时varType得出的为vardispacth(9),取到值时也为此值。谢谢谢谢
 
以前有朋友说过,将variant转成string或是PChar(我忘了),然后判断string或是PChar,你再试试看。
 
好像不可以,VatToStr时就已经报异常,
 
VarIsEmpty(你的变量名)
 
VARISNULL也不可以,无论是否取到值,VARISNULL得出的值都为FALSE。
在跟踪下看到值为$00000000,却取不出这个值来,
 
不要用VatToStr,而是类型强制转换

Var
vv:variant;
ss:String;
begin
ss:=String(vv);
if ss = '' then
showmessage('vv is empty');
 
我明天试一下,程序没有在身边。谢谢
 
后退
顶部