ToBase64 |
Description
Calculates the Base64 representation of a string or binary object. The Base64 format uses printable characters, allowing binary data to be sent in forms and e-mail, and stored in a database or file.
The Base64 representation of a string or binary object.
Category
Conversion functions, Other functions, String functions
Function syntax
    ToBase64(string or binary_object[, encoding])
See also cffile for information about loading and reading binary data cfwddx for information about serializing and deserializing binary data IsBinary and ToBinary for checking for binary data and converting a Base64 object to binary format
History
ColdFusion MX: Added the encoding attribute.
Parameters
Parameter | Description
string or binary_object | A string, the name of a string, or a binary object.
encoding | For a string, defines how characters are represented in a byte array. 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 on character encodings, see:
| www.w3.org/International/O-charset.html.
| Default: the encoding of the page on which the function is called. See
| cfcontent on page 92.
| For a binary object, this parameter is ignored.
Usage
Base64 provides 6-bit encoding of data. The encoding process represents 24-bit groups of input bits as output strings of 4 encoded ASCII characters. Binary objects and, in some cases, 8-bit characters, cannot be transported over many internet protocols, such as HTTP and SMTP. Using Base64 safely converts the data into a format that is safe over any internet protocol.
Base64 lets you store binary objects in a database.
Note: | To reverse Base64 encoding of a string, you can convert it to a binary object, then convert the binary object to a string, using the toString function.
Example
    <h3>ToBase64 Example</h3>
    <!--- Initialize data. ---->
    <cfset charData = "">
    <!--- Create string of ASCII characters (32-255); concatenate them --->
    <cfloop index = "data" from = "32" to = "255">
       <cfset ch = chr(data)>
       <cfset charData = charData & ch>
    </cfloop>
    <p>
    The following string is the concatenation of all characters (32 to 255)
    from the ASCII table.<br>
    <cfoutput>#charData#</cfoutput>
    </p>
    <!--- Create a Base64 representation of this string. ---->
    <cfset data64 = toBase64(charData)>

    <!----- Convert string to binary. ------->
    <cfset binaryData = toBinary(data64)>
    <!--- Convert binary back to Base64. ---->
    <cfset another64 = toBase64(binaryData)>
    <!---- Compare another64 with data64 to ensure that they are equal. ---->
    <cfif another64 eq data64>
       <h3>Base64 representations are identical.</h3>
    <cfelse>
       <h3>Conversion error.</h3>
    </cfif>

string or binary_object |
A string, the name of a string, or a binary object.

encoding |
For a string, defines how characters are represented in a byte array. 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 on character encoding, see: http://www.w3.org/International/O-charset.html.
Default: the encoding of the page on which the function is called. See cfcontent.
For a binary object, this parameter is ignored.