File 文件长度(LOF)返回0

File 文件长度(LOF)返回0,file,vb6,File,Vb6,LOF返回0 这是文件 下面是一个示例函数 Public Function GetNumberOfLinesInFile(ByVal FileFullQualifiedName As String) As Double Dim f As Integer Dim FileBytes As Double Dim LineCount As Double f = FreeFile(0) Open FileFullQualifiedName For Binary Access Read As #f F

LOF返回0

这是文件

下面是一个示例函数

Public Function GetNumberOfLinesInFile(ByVal FileFullQualifiedName As String) As Double
Dim f As Integer
Dim FileBytes As Double
Dim LineCount As Double

f = FreeFile(0)
Open FileFullQualifiedName For Binary Access Read As #f
FileBytes = LOF(f)
'//CODE MISSING
Close #f
GetNumberOfLinesInFile = LineCount
End Function
编辑 看起来它不适用于
二进制访问
,如果按以下方式打开文件,则工作正常

Open FileFullQualifiedName For Input Access Read As #f
编辑2 在上面的示例函数中,
LOF
通过将
FileBytes
声明为
Long
来工作,但它并不适用于任何地方。例如,在下一行中,
LOC
LOF
都返回
0

Do Until Loc(FF) >= LOF(FF)
编辑3


不知何故,文件路径被更改,因此,
openfilefullqualifiedname For Binary Access Read As#f
正在创建一个新文件,显然,
LOF
正在为这个空文件返回
0
我的错误


不知何故,文件路径被更改,因此,
openfilefullqualifiedname For Binary Access Read As#f
正在创建一个新文件,显然,
LOF
正在为这个空文件返回
0
,为什么FileBytes和LineCount被声明为Double??他们需要Long@rags它通过声明为long来工作,这意味着如果文件大小>2GB@rags即使变量被声明为long,它在所有位置都不起作用“不起作用”是什么意思?@rags not working=返回0