Name

Loc Function

Class

Microsoft.VisualBasic.FileSystem

Syntax

Loc(filenumber)
filenumber (required; Integer)

Any valid file number

Return Value

A Long indicating the current position of the read/write pointer in a file

Description

Determines the current position of the file read/write pointer

Rules at a Glance

  • If you have opened the file in Random mode, Loc returns the record number of the last record read or written.

  • If you have opened the file in Input or Output modes (sequential), Loc returns the current byte position in the file divided by 128.

  • If you have opened the file in Binary mode, Loc returns the position of the last byte read or written.

Example

Dim fr As Integer = FreeFile(  )
Dim sChar As Char
FileOpen(fr, "c:\data.txt", OpenMode.Binary, OpenAccess.Read)

Do While Loc(fr) < LOF(fr)
    FileGet(fr, sChar)
    Debug.Write(Loc(fr) & ": ")
    Console.WriteLine(sChar)
Loop

Programming Tips and Gotchas

  • For sequential files, the return value of Loc is not required and should not be used.

  • Note that you cannot set the position of the file pointer using Loc.

Get VB.NET Language in a Nutshell, Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.