VB6如何判断Variant类型的数据长度
VarType可以判断数据是什么类型,long类型为4,integer为2,字节为1,字符串可以用LenB来判断,可是数据是数组就不好判断了。VarType只知道是数组,不知道是哪种数组,如果是字节组,长度就是维数,如果是long类型数组,长度是维数×4.
那还有什么函数可以取得数据的实际长度呢。也就是内存所占的空间。
[解决办法]
判断数组长度先,然后循环取每一个元素来VarType求和
如果数组存档的是相同的类型,直接长度*VarType
[解决办法]
VarType 函数
返回一个 Integer,指出变量的子类型。
语法
VarType(varname)
必要的 varname 参数是一个 Variant,包含用户定义类型变量之外的任何变量。
返回值
常数 值 描述
vbEmpty 0 Empty(未初始化)
vbNull 1 Null(无有效数据)
vbInteger 2 整数
vbLong 3 长整数
vbSingle 4 单精度浮点数
vbDouble 5 双精度浮点数
vbCurrency 6 货币值
vbDate 7 日期
vbString 8 字符串
vbObject 9 对象
vbError 10 错误值
vbBoolean 11 布尔值
vbVariant 12 Variant(只与变体中的数组一起使用)
vbDataObject 13 数据访问对象
vbDecimal 14 十进制值
vbByte 17 位值
vbUserDefinedType 36 包含用户定义类型的变量
vbArray 8192 数组
注意 这些常数是由 Visual Basic 为应用程序指定的。这些名称可以在程序代码中到处使用,以代替实际值。
说明
VarType 函数自身从不对 vbArray 返回值。VarType 总是要加上一些其他值来指出一个具体类型的数组。常数 vbVariant 只与 vbArray 一起返回,以表明 VarType 函数的参数是一个 Variant 类型的数组。例如,对一个整数数组的返回值是 vbInteger + vbArray,或 8194。如果一个对象有缺省属性,则 VarType (object) 返回对象缺省属性的类型。