Description

Converts a string to a binary object. Used to convert binary data that has been encoded into string format back into binary data.

Returns

A binary object.

Category

Conversion functionsString functions

Function syntax

BinaryDecode(string, binaryencoding)

See also

BinaryEncodeCharsetEncodeCharsetDecode

History

ColdFusion MX 7: Added this function.

Parameters

Parameter

Description

string

A string containing encoded binary data.

binaryencoding

A string that specifies the algorithm used to encode the original binary data into a string; must be one of the following:

  • Hex: the characters 0-9 and A-F represent the hexadecimal value of each byte; for example, 3A.
  • UU: data is encoded using the UNIX UUencode algorithm.
  • Base64: data is encoded using the Base64 algorithm, as specified by IETF RFC 2045, at www.ietf.org/rfc/rfc2045.txt.

Usage

Use this function to convert a binary-encoded string representation of binary data back to a binary object for use in your application. Binary data is often encoded as a string for transmission over many Internet protocols, such as HTTP and SMTP, or for storage in a database.Adobe recommends that you use the BinaryDecode function, not the ToBinary(base64data) function, to convert Base64-encoded data to binary data in all new applications.See the following pages for additional information on handling binary data:

  • cffile for loading and reading binary data in files
  • cfwddx for serializing and deserializing binary data
  • IsBinary for checking variables for binary format
  • Len for determining the length of a binary object

Example

The following example reads a GIF file as binary data, converts it to a binary-encoded string, converts the binary-encoded data back to binary data and writes the result to a file. It displays the encoded string and the image in the output file.

<h3>Binary Encoding Conversion Example</h3>

<!--- Do the following if the form has been submitted. --->
<cfif IsDefined("Form.binEncoding")>

<!--- Read in a binary data file. --->
<cffile action="readbinary" file="C:\images\help.gif" variable="binimage">

<!--- Convert the read data to binary encoding and back to binary data. --->
<cfscript>
binencode=BinaryEncode(binimage, Form.binEncoding);
bindecode=BinaryDecode(binencode, Form.binEncoding);
</cfscript>

<!---Write the converted results to a file. --->
<cffile action="write" file="C:\temp\help.gif" output="#bindecode#" addnewline="No" >

<!--- Display the results. --->
<cfoutput>
<p><b>The binary encoding:</b> #Form.binEncoding#</p>

<p><b>The image converted into a binary-encoded string by BinaryEncode
</b><br>
#binencode#</p>
<p><b>The image as written back to a file after converting back to binary
using BinaryDecode</b><br>
<img src="C:\temp\help.gif"><br>
</cfoutput>
</cfif>

<!--- The input form. --->
<form action="#CGI.SCRIPT_NAME#" method="post">
<b>Select binary encoding</b><br>
<select size="1" name="binEncoding" >
<option selected>UU</option>
<option>Base64</option>
<option>Hex</option>
</select><br>
<br>
<input type = "Submit" value = "convert my data">
</form>

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