Microsoft KB Archive/87502

{| = Using FSEEK Function to Determine Size of File in Bytes =
 * width="100%"|

ID: Q87502

The information in this article applies to:


 * Microsoft FoxPro for MS-DOS, versions 1.0, 1.01, 1.02, 2.0, 2.5, and 2.5a
 * Microsoft FoxPro for Windows, versions 2.5 and 2.5a

SUMMARY
The text below provides a code example to determine the size (in bytes) of a specific file using a user-defined function (UDF) that uses the FSEEK function.

MORE INFORMATION
To determine the size of the C:\COMMAND.COM file, invoke the filesize UDF as follows:

clear @ 2,5 say filesize('c:\command.com')

FUNCTION filesize PARAMETERS mfile

PRIVATE mhandle, fsize

IF PARAMETERS = 0 && Return -2 if no parameter passed. RETURN -2 ELSE IF ! FILE(mfile) && Return -1 if file does not exist. RETURN -1 ENDIF ENDIF

mhandle = FOPEN(mfile)       && Open specified file. fsize = FSEEK(mhandle, 0, 2) && Determine file size and &&  assign to fsize. = FCLOSE(mhandle)            && Close file.

RETURN fsize        && Return value. Additional reference words: FoxDos FoxWin 1.00 1.01 1.02 2.00 2.50 2.50a KBCategory: kbprg KBSubcategory: FxprgGeneral
 * }