função VariantBasicTypeName (varVar: Variação): Corda;
var
basicType : Inteiro;
começar
basicType: = VarType (varVar) e VarTypeMask;
basicType do caso de
varEmpty : Resultado: = “esvaziar”;
varNull : Resultado: = “zero”;
varSmallInt : Resultado: = “SmallInt”;
varInteger : Resultado: = “inteiro”;
varSingle : Resultado: = “escolhir”;
varDouble : Resultado: = “dobro”;
varCurrency : Resultado: = “moeda”;
varDate : Resultado: = “data”;
varOleStr : Resultado: = “OleStr”;
varDispatch : Resultado: = “expedição”;
varError : Resultado: = “erro”;
varBoolean : Resultado: = “bôoleano”;
varVariant : Resultado: = “variação”;
varUnknown : Resultado: = “desconhecido”;
varByte : Resultado: = “byte”;
{$ifdef VER140}
varWord : Resultado: = “palavra”;
varLongWord : Resultado: = “LongWord”;
varInt64 : Resultado: = “Int64”;
{$endif}
varStrArg : Resultado: = “StrArg”;
varString : Resultado: = “corda”;
varAny : Resultado: = “alguns”;
varTypeMask : Resultado: = “TypeMask”;
Resultado outro: = formato (“costume (%d)”, [basicType]);
extremidade;
extremidade;
função VariantTypeName (varVar: Variação): Corda;
var
ExtType, i : Inteiro;
começar
ExtType: = VarType (varVar);
Resultado: =VariantBasicTypeName (varVar);
se (ExtType e varArray) >0 então
começar
Resultado: =Result+'[';
para i: =1 a VarArrayDimCount (varVar) resultam: =Result+Format (“%d,”, [VarArrayHighBound (varVar, i) - VarArrayLowBound (varVar, i)+1]);
Resultado [comprimento (resultado)]: = '] ';
extremidade;
se (ExtType e varByRef) >0 resultam então: = ' @ ' +Result;
extremidade;
função VariantAsString (varVar: Variação): Corda;
Var
// L: TStringList;
basicType, i, j, não ofuscante: Inteiro;
começar
basicType: = VarType (varVar) e VarTypeMask;
se VarIsArray (varVar) então
começar
Escurecer: =VarArrayDimCount (varVar);
se Dim>2 então
começar
Resultado: = ' disposição '+VariantTypeName (varVar);
Saída;
extremidade;
Resultado: = ' [';
se Dim=1
Então para i: o =VarArrayLowBound (varVar, 1) a VarArrayHighBound (varVar, 1) resulta: =Result+VariantAsString (varVar [i]) + ', '
Mais para i: o =VarArrayLowBound (varVar, 1) a VarArrayHighBound (varVar, 1) faz
começar
Resultado: =Result+#13#10 [';
para j: o =VarArrayLowBound (varVar, 2) a VarArrayHighBound (varVar, 2) resulta: =Result+VariantAsString (varVar [i, j]) + ', ';
Resultado [comprimento (resultado)]: = '] ';
Resultado: =Result+, ';
extremidade;
Resultado [comprimento (resultado)]: = '] ';
extremidade mais
começar
se VarIsEmpty (varVar) resulta então: = ' (vazio) 'mais
se VarIsNull (varVar) resulta então: = ' (zero) 'resultado outro: =VarToStr (varVar);
extremidade;
extremidade;
|