0

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

编辑 它看起来它不工作Binary Access,如果文件打开如下它工作正常

Open FileFullQualifiedName For Input Access Read As #f

编辑 2 在上面的示例函数中LOF,通过声明FileBytes为,Long但它并非在任何地方都有效。例如在以下行中,两者LOCLOF返回0

Do Until Loc(FF) >= LOF(FF)

编辑 3

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

4

1 回答 1

0

我的错

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

于 2013-07-24T05:37:16.467 回答