FromBase64Transform Class
.NET Framework 4
Converts a CryptoStream from base 64.
Namespace:
System.Security.Cryptography
Assembly: mscorlib (in mscorlib.dll)
The FromBase64Transform type exposes the following members.
| Name | Description | |
|---|---|---|
|
FromBase64Transform() | Initializes a new instance of the FromBase64Transform class. |
|
FromBase64Transform(FromBase64TransformMode) | Initializes a new instance of the FromBase64Transform class with the specified transformation mode. |
| Name | Description | |
|---|---|---|
|
CanReuseTransform | Gets a value indicating whether the current transform can be reused. |
|
CanTransformMultipleBlocks | Gets a value that indicates whether multiple blocks can be transformed. |
|
InputBlockSize | Gets the input block size. |
|
OutputBlockSize | Gets the output block size. |
| Name | Description | |
|---|---|---|
|
Clear | Releases all resources used by the FromBase64Transform. |
|
Dispose() | Releases all resources used by the current instance of the FromBase64Transform class. |
|
Dispose(Boolean) | Releases the unmanaged resources used by the FromBase64Transform and optionally releases the managed resources. |
|
Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
|
Finalize | Releases the unmanaged resources used by the FromBase64Transform. (Overrides Object.Finalize().) |
|
GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
|
GetType | Gets the Type of the current instance. (Inherited from Object.) |
|
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
|
ToString | Returns a string that represents the current object. (Inherited from Object.) |
|
TransformBlock | Converts the specified region of the input byte array from base 64 and copies the result to the specified region of the output byte array. |
|
TransformFinalBlock | Converts the specified region of the specified byte array from base 64. |
The following example decrypts a base 64-encoded file to an output text file.
using System; using System.IO; using System.Security.Cryptography; namespace ToBase64Transform_Examples { class MyMainClass { public static void Main() { //Insert your file names into this method call. DecodeFromFile("c:\\encoded.txt", "c:\\roundtrip.txt"); } public static void DecodeFromFile(string inFileName, string outFileName) { FromBase64Transform myTransform = new FromBase64Transform(FromBase64TransformMode.IgnoreWhiteSpaces); byte[] myOutputBytes = new byte[myTransform.OutputBlockSize]; //Open the input and output files. FileStream myInputFile = new FileStream(inFileName, FileMode.Open, FileAccess.Read); FileStream myOutputFile = new FileStream(outFileName, FileMode.Create, FileAccess.Write); //Retrieve the file contents into a byte array. byte[] myInputBytes = new byte[myInputFile.Length]; myInputFile.Read(myInputBytes, 0, myInputBytes.Length); //Transform the data in chunks the size of InputBlockSize. int i = 0; while(myInputBytes.Length - i > 4/*myTransform.InputBlockSize*/) { myTransform.TransformBlock(myInputBytes, i, 4/*myTransform.InputBlockSize*/, myOutputBytes, 0); i += 4/*myTransform.InputBlockSize*/; myOutputFile.Write(myOutputBytes, 0, myTransform.OutputBlockSize); } //Transform the final block of data. myOutputBytes = myTransform.TransformFinalBlock(myInputBytes, i, myInputBytes.Length - i); myOutputFile.Write(myOutputBytes, 0, myOutputBytes.Length); //Free up any used resources. myTransform.Clear(); myInputFile.Close(); myOutputFile.Close(); } } }
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Example error
> 4/*myTransform.InputBlockSize*/
As mentioned in http://msdn.microsoft.com/en-us/library/system.security.cryptography.frombase64transform.inputblocksize.aspx myTransform.InputBlockSize is 1 not 4.
As mentioned in http://msdn.microsoft.com/en-us/library/system.security.cryptography.frombase64transform.inputblocksize.aspx myTransform.InputBlockSize is 1 not 4.
- 6/4/2011
- PetSerAl