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