Note:

You can find the CFFiddle demo of this function and other file functions as part of a project that is shared with you.

Click the button below to launch CFFiddle.

To copy the project in your workspace in CFFiddle, follow the steps below:

  1. Log in with your Gmail or Facebook credentials.
  2. Navigate to the project in the left pane.
  3. Once you make some changes in any cfm in the project, a pop up displays asking you to save the project.
  4. Give the project a suitable name and click Save.
  5. Create a folder named dir1 and upload a text file, myfile.txt.

Description

Opens an on-disk or in-memory file to read, write, or append. Use this function with the FileRead function to read large files.

Returns

A file object that represents the open file.

Category

System functions

Function syntax

FileOpen(filepath, [mode, charset])

See also

FileCloseFileCopyFileReadBinaryFileReadFileReadLineFileWritecffile

History

ColdFusion 8: Added this function.

Parameters

Parameter

Description

filepath

An absolute path of an on-disk or in-memory 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 does not have to exist before you open it. To write a new file, open it for writing, and then write it.The file object is a handle to a file. You can use the object as a structure to access 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

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#">

Use the following syntax to specify an in-memory file, which is not written to disk. In-memory files speed processing of transient data.

ram:///filepath

The filepath can include directories, for example ram:///petStore/images/poodle.jpg. Create the directories in the path before you specify the file. For more information on using in-memory files, see Working with in-memory files in the Developing ColdFusion Applications.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>

 

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License  Twitter™ and Facebook posts are not covered under the terms of Creative Commons.

Legal Notices   |   Online Privacy Policy