Convert.ToBase64String Method (Byte[]) (System)

Switch View :
ScriptFree
.NET Framework Class Library
Convert.ToBase64String Method (Byte[])

[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]

Converts an array of 8-bit unsigned integers to its equivalent string representation that is encoded with base-64 digits.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)
Syntax

Visual Basic
Public Shared Function ToBase64String ( _
	inArray As Byte() _
) As String
C#
public static string ToBase64String(
	byte[] inArray
)
Visual C++
public:
static String^ ToBase64String(
	array<unsigned char>^ inArray
)
F#
static member ToBase64String : 
        inArray:byte[] -> string 

Parameters

inArray
Type: System.Byte[]

An array of 8-bit unsigned integers.

Return Value

Type: System.String
The string representation, in base 64, of the contents of inArray.
Exceptions

Exception Condition
ArgumentNullException

inArray is null.

Remarks

The elements of inArray are taken as a numeric value and converted to a string representation that is encoded with base-64 digits.

The base-64 digits in ascending order from zero are the uppercase characters "A" to "Z", the lowercase characters "a" to "z", the numerals "0" to "9", and the symbols "+" and "/". The valueless character, "=", is used for trailing padding.

Important note Important

The ToBase64String method is designed to process a single byte array that contains all the data to be encoded. To encode data from a stream, use the System.Security.Cryptography.ToBase64Transform class.

Examples

The following example demonstrates using the ToBase64CharArray method to UUencode (encode in base 64) a binary stream, then save the encoding to a file.

Visual Basic

      Public Sub EncodeWithString()
         Dim inFile As System.IO.FileStream
         Dim binaryData() As Byte

         Try
            inFile = New System.IO.FileStream(inputFileName, _
                                              System.IO.FileMode.Open, _
                                              System.IO.FileAccess.Read)
            ReDim binaryData(inFile.Length)
            Dim bytesRead As Long = inFile.Read(binaryData, _
                                                0, _
                                                inFile.Length)
            inFile.Close()
         Catch exp As System.Exception
            ' Error creating stream or reading from it.
            System.Console.WriteLine("{0}", exp.Message)
            Return
         End Try

         ' Convert the binary input into Base64 UUEncoded output.
         Dim base64String As String
         Try
            base64String = System.Convert.ToBase64String(binaryData, _
                                                         0, _
                                                         binaryData.Length)
         Catch exp As System.ArgumentNullException
            System.Console.WriteLine("Binary data array is null.")
            Return
         End Try

         ' Write the UUEncoded version to the output file.
         Dim outFile As System.IO.StreamWriter
         Try
            outFile = New System.IO.StreamWriter(outputFileName, _
                                                 False, _
                                                 System.Text.Encoding.ASCII)
            outFile.Write(base64String)
            outFile.Close()
         Catch exp As System.Exception
            ' Error creating stream or writing to it.
            System.Console.WriteLine("{0}", exp.Message)
         End Try
      End Sub



C#

public void EncodeWithString() {
   System.IO.FileStream inFile;    
   byte[]             binaryData;

   try {
      inFile = new System.IO.FileStream(inputFileName,
                                System.IO.FileMode.Open,
                                System.IO.FileAccess.Read);
      binaryData = new Byte[inFile.Length];
      long bytesRead = inFile.Read(binaryData, 0,
                           (int)inFile.Length);
      inFile.Close();
   }
   catch (System.Exception exp) {
      // Error creating stream or reading from it.
      System.Console.WriteLine("{0}", exp.Message);
      return;
   }

   // Convert the binary input into Base64 UUEncoded output.
   string base64String;
   try {
       base64String = 
         System.Convert.ToBase64String(binaryData, 
                                0,
                                binaryData.Length);
   }
   catch (System.ArgumentNullException) {
      System.Console.WriteLine("Binary data array is null.");
      return;
   }

   // Write the UUEncoded version to the output file.
   System.IO.StreamWriter outFile; 
   try {
      outFile = new System.IO.StreamWriter(outputFileName,
                           false,
                           System.Text.Encoding.ASCII);          
      outFile.Write(base64String);
      outFile.Close();
   }
   catch (System.Exception exp) {
      // Error creating stream or writing to it.
      System.Console.WriteLine("{0}", exp.Message);
   }
}


Visual C++

public:
   void EncodeWithString()
   {
      FileStream^ inFile;
      array<Byte>^ binaryData;

      try
      {
         inFile = gcnew FileStream( inputFileName,
                                    FileMode::Open,
                                    FileAccess::Read );
         binaryData = gcnew array<Byte>((int)(inFile->Length));
         long bytesRead = inFile->Read( binaryData, 0,
                                        (int)inFile->Length );
         inFile->Close();
      }
      catch ( Exception^ exp ) 
      {
         // Error creating stream or reading from it.
         Console::WriteLine( " {0}", exp->Message );
         return;
      }

      // Convert the binary input into Base64 UUEncoded output.
      String^ base64String;
      try
      {
         base64String = Convert::ToBase64String( binaryData,
                                                 0,
                                                 binaryData->Length );
      }
      catch ( ArgumentNullException^ ) 
      {
         Console::WriteLine( "Binary data array is null." );
         return;
      }

      // Write the UUEncoded version to the output file.
      StreamWriter^ outFile;
      try
      {
         outFile = gcnew StreamWriter( outputFileName,
                                       false,
                                       Text::Encoding::ASCII );
         outFile->Write( base64String );
         outFile->Close();
      }
      catch ( Exception^ exp ) 
      {

         // Error creating stream or writing to it.
         Console::WriteLine( " {0}", exp->Message );
      }
   }


Version Information

.NET Framework

Supported in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Portable Class Library

Supported in: Portable Class Library
Platforms

Windows 8 Consumer Preview, Windows Server 8 Beta, Windows 7, Windows Server 2008 SP2, Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

See Also

Reference