Click to Rate and Give Feedback
MSDN
MSDN Library
.NET Development
.NET Framework 3.5
System Namespace
Convert Class
Convert Methods
 ToBase64String Method (Byte[])
This page is specific to
Microsoft Visual Studio 2008/.NET Framework 3.5

Other versions are also available for the following:
.NET Framework Class Library
Convert..::.ToBase64String Method (array<Byte>[]()[])

Updated: November 2007

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

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

Visual Basic (Declaration)
Public Shared Function ToBase64String ( _
    inArray As Byte() _
) As String
Visual Basic (Usage)
Dim inArray As Byte()
Dim returnValue As String

returnValue = Convert.ToBase64String(inArray)
C#
public static string ToBase64String(
    byte[] inArray
)
Visual C++
public:
static String^ ToBase64String(
    array<unsigned char>^ inArray
)
J#
public static String ToBase64String(
    byte[] inArray
)
JScript
public static function ToBase64String(
    inArray : byte[]
) : String

Parameters

inArray
Type: array<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.

ExceptionCondition
ArgumentNullException

inArray is nullNothingnullptra null reference (Nothing in Visual Basic).

The elements of inArray are taken as a numeric value and converted to a String representation 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.

The following code 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 );
      }
   }

J#
public void EncodeWithString()
{
    System.IO.FileStream inFile;
    ubyte binaryData[];

    try {
        inFile = new System.IO.FileStream(inputFileName,
                                          System.IO.FileMode.Open,
                                          System.IO.FileAccess.Read);

        binaryData = new ubyte[(int)inFile.get_Length()];

        long bytesRead = inFile.Read(binaryData,
                                     0, (int)(inFile.get_Length()));

        inFile.Close();
    }
    catch (System.Exception exp) {
        // Error creating stream or reading from it.
        System.Console.WriteLine("{0}", exp.get_Message());
        return;
    }

    // Convert the binary input into Base64 UUEncoded output.
    String base64String;

    try {
        base64String = System.Convert.ToBase64String(binaryData, 
                                                     0, binaryData.length);
    }
    catch (System.ArgumentNullException exp) {
        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.get_ASCII());
        outFile.Write(base64String);
        outFile.Close();
    }
    catch (System.Exception exp) {
        // Error creating stream or writing to it.
        System.Console.WriteLine("{0}", exp.get_Message());
    }
} //EncodeWithString

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360

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

.NET Framework

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

.NET Compact Framework

Supported in: 3.5, 2.0

XNA Framework

Supported in: 2.0, 1.0
Tags What's this?: Add a tag
Community Content   What is Community Content?
Add new content RSS  Annotations
Processing
© 2008 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Page view tracker