Adobe ColdFusion 8

FileOpen

Description

Opens a file to read, write, or append. Use this function with the FileRead function to read large files.

Returns

The filename, the absolute filepath, when the file was most recently modified, the mode for which you opened the file, the file size in bytes, and whether the file is open or closed.

Category

System functions

Function syntax

FileOpen(filepath, [mode, charset])

See also

FileClose, FileCopy, FileReadBinary, FileRead, FileReadLine, FileWrite, cffile

History

ColdFusion 8: Added this function.

Parameters

Parameter

Description

filepath

An absolute path of a file on the server.

mode

Action to perform on the file, including the following:

  • read
  • readBinary
  • write
  • append

If you do not specify the mode, ColdFusion opens the file in read mode.

charset

The character set of the file.

Usage

The file object is a handle to a file. The handle includes the following information:

  • filename Name of the file you opened
  • filepath Absolute path and filename
  • lastmodified The time when the file was most recently modified
  • mode The action for which the file was opened
  • size The file size in bytes
  • status Whether the file object is open or closed

You refer to these as elements of a structure, for example fileobj.filename. The following opens a file, and then displays the absolute path and filename of that file:

<cfscript> 
myfile = FileOpen("c:\temp\test1.txt", "read");
</cfscript>
myfile refers to:
<cfdump var="#myfile.filepath#">

You should always close a file after opening it. When you use the FileOpen function to open a file, the file stream from the disk is opened and contents are read from or written to it. The FileClose function closes the stream. If you do not close a file, the stream remains open; in that case, the operating system can lock the file, which results in the file not being usable until the server is restarted.

Example

The following example opens a file, reads and outputs each line of the file, then closes the file.

<h3>FileOpen Example</h3>

<cfscript> 
myfile = FileOpen("c:\temp\test1.txt", "read");
while(NOT FileIsEOF(myfile))
{
x = FileReadLine(myfile);
WriteOutput("#x# <br>"); }
FileClose(myfile);
</cfscript>