CFFILE ACTION = "WRITE" |
Description Writes a text file on the server, based on dynamic content. You can create static HTML files from the content, or log actions in a text file.
Syntax
    <cffile
       action = "write"
       file = "full_path_name"
       output = "content"
       mode = "permission"
       addNewLine = "yes" or "no"
       attributes = "file_attributes_list"
       charset = "charset_option" >
See also cfdirectory
History See the History section of the main cffile tag page.
Example This example creates a file with information a user entered in an HTML insert form:
    <cffile action = "write"
       file = "c:\files\updates\#Form.UpdateTitle#.txt"
       output = "Created By: #Form.FullName#
       Date: #Form.Date#
       #Form.Content#">
If the user submitted a form with the following:
    UpdateTitle = "FieldWork"
    FullName = "World B. Frueh"
    Date = "10/30/01"
    Content = "We had a wonderful time in Cambridgeport."
ColdFusion would create a file named FieldWork.txt in the c:\files\updates\ directory and the file would contain the following text:
    Created By: World B. Frueh
    Date: 10/30/01
    We had a wonderful time in Cambridgeport.
This example shows the use of the mode attribute for UNIX. It creates the file /tmp/foo with permissions rw-r--r-- (owner = read/write, group = read, other = read):
    <cffile action = "write"
       file = "/tmp/foo"
    mode = 644>
This example appends to the file and sets permissions to read/write (rw) for all:
    <cffile action = "append"
       destination = "/home/tomj/testing.txt"
    mode = 666
    output = "Is this a test?">
This example uploads a file and gives it the permissions owner/group/other = read/write/execute):
    cffile action = "upload"
       fileField = "fieldname"
    destination = "/tmp/program.exe"
    mode = 777>
This example uses the fixnewline attribute to changes embedded line-ending characters in xmlString, which is derived from xmlData, to operating-system specific line endings.
    <cfxml variable="xmlData">
       <docroot>
          <payload type="string">This is some plain text</payload>
       </docroot>
    </cfxml>
    <cfset xmlString = toString(xmlData)>

    <cfset key = createUUID()>
    <cfset encString=encrypt(xmlString, key)>
    <cffile action="write" addnewline="yes"
    file="C:\CFusionMX7\wwwroot\test\store.dat" output="#encString#"
    fixnewline="yes">
    <cffile action="read" file="C:\CFusionMX7\wwwroot\test\store.dat"
    variable="retrievedString">
    <cfset decString=decrypt(retrievedString, key)>
    <cfdump var="#decString#">
    <cfset newXML = xmlParse(decString)>
    <cfdump var="#newXML#">

ACTION |
| Required
Type of file manipulation that the tag performs.

FILE |
| Required
Pathname of the file to write. If not an absolute path (starting a with a drive letter and a colon, or a forward or backward slash), it is relative to the ColdFusion temporary directory, which is returned by the GetTempDirectory function.

OUTPUT |
| Required
Content of the file to be created.

MODE |
| Optional
Applies only to UNIX and Linux. Permissions. Octal values of UNIX chmod command. Assigned to owner, group, and other, respectively. For example:

- 644: assigns read/write permission to owner; read permission to group and other.
- 777: assigns read/write/execute permission to all.

ADDNEWLINE |
| Optional
Default value: "yes"

- yes: appends newline character to text written to file.
- no

ATTRIBUTES |
| Optional
Applies to Windows. A comma-delimited list of attributes to set on the file. If omitted, the file's attributes are maintained. Each value must be specified explicitly. For example, if you specify attributes = "readOnly", all other attributes are overwritten.

- readOnly
- hidden
- normal

CHARSET |
| Optional
Default value: "JVM default file character set." The character encoding in which the file contents is encoded. The following list includes commonly used values:

- utf-8
- iso-8859-1
- windows-1252
- us-ascii
- shift_jis
- iso-2022-jp
- euc-jp
- euc-kr
- big5
- euc-cn
- utf-16

For more information character encodings, see www.w3.org/International/O-charset.html.

FIXNEWLINE |
| Optional
Default value: "No"

- Yes: changes embedded line-ending characters in string variables to operating-system specific line endings.
- No: (default) do not change embedded line-ending characters in string variables.