Writing to a file with FoxPro

The FWRITE (<filehandle>,<characters>) function writes the characters specified to the file associated with this filehandle. It overwrites anything that is in this file already.

*-- Create a new file ...
lnFileHandle = FCREATE ('fred.txt')
*-- ... write some text into the file ...
FWRITE (lnFileHandle, 'Hello Mum')
FWRITE (lnFileHandle, 'This is some text for my file') *-- ... and close it.
FCLOSE (lnFileHandle)

Although this example seems to be writing two lines of text to the file, all it will produce is:

Hello MumThis is some text for my file

The FWRITE function will only write the characters we ask it to write and to get two separate lines of output we would need to explicitly send a Carriage Return character to the file:

*-- Create a new file ...
lnFileHandle = FCREATE ('fred.txt')
*-- ... write some text into the file ...
FWRITE (lnFileHandle, 'Hello Mum')
FWRITE (lnFileHandle, Chr(13))
FWRITE (lnFileHandle, 'This is some text for my file') *-- ... and close it.
FCLOSE (lnFileHandle)

Even within the PC world, different text editors require different combinations of CarriageReturn and LineFeed.

Another low level file function, FPUTS() will write a string of bytes to the file followed by a CarriageReturn and LineFeed. This function is usually more suitable than FWRITE() when working with text files.

Related Items

FoxPro Functions

FoxPro has always had functions like FREAD and FWRITE to read and write files at a low level. They can handle files which defeat the STRTOFILE and FILETOSTR functions.

Read More

FoxPro functions for manipulating text

Foxpro commands and functions for text

Read More

Close a low level file in FoxPro

FoxPro file handling - use FCLOSE() to close a low level file

Read More

Create a low level file with FoxPro

FoxPro file handling - use FCREATE() to create a low level file

Read More

Open a low level file in FoxPro

FoxPro file handling - use FOPEN() to open a low level file

Read More