新手问个简单的问题!
正在 学习随机文件操作里面 有行代码不太懂意思!代码如下:
maxsize = lof(1) \ len(myrecord) 注释: 取得文件中的记录的数。
lof中的1 是文件号, myrecord 是文件内容变量
为什么这个语句就能获得文件中的记录的数呢? ·······木有人来 LOF 函数
返回一个 Long,表示用 Open 语句打开的文件的大小,该大小以字节为单位。
语法
LOF(filenumber)
必要的 filenumber 参数是一个 Integer,包含一个有效的文件号。
注意 对于尚未打开的文件,使用 FileLen 函数将得到其长度。
Len 函数
返回 Long,其中包含字符串内字符的数目,或是存储一变量所需的字节数。
语法
Len(string | varname)
Len 函数的语法有下面这些部分:
部分 说明
string 任何有效的字符串表达式。如果 string 包含 Null,会返回 Null。
Varname 任何有效的变量名称。如果 varname 包含 Null,会返回 Null。如果 varname 是 Variant,Len 会视其为 String 并且总是返回其包含的字符数。
说明
两个可能的参数必须有其一(而且只能有其一)。如为用户定义类型,Len 会返回其写至文件的大小。
注意 LenB 函数作用于字符串中的字节数据,如同在双字节字符集(DBCS)语言中一样。所以 LenB 返回的是用于代表字符串的字节数,而不是返回字符串中字符的数量。如为用户自定义类型,LenB 返回在内存中的大小,包括元素之间的衬垫。对于使用 LenB的示例代码,请参阅示例主题中的第二个示例。
注意 当在用户自定义数据类型中使用变长字符串时,Len 可能不能确定实际存储所需的字节数目。
是不是这样理解:总数(打开文件的大小)知道了,单位量(单个记录的大小)也知道了,那么总数除以单位量就是数量(记录数)呢?
++ lof(1) 取得文件长度.
len(myrecord) 取得每条记录的长度.
"总长度/每条记录的长度"就是记录数量了!
关键在于两点:
1. 随机文件的记录是等长的.
2. 你代码中的这个myrecord的变量类型.
补充:VB , 基础类