Skip to content

Most visited

Recently visited

navigation

Base64.Encoder

public static class Base64.Encoder
extends Object

java.lang.Object
   ↳ java.util.Base64.Encoder


This class implements an encoder for encoding byte data using the Base64 encoding scheme as specified in RFC 4648 and RFC 2045.

Instances of Base64.Encoder class are safe for use by multiple concurrent threads.

Unless otherwise noted, passing a null argument to a method of this class will cause a NullPointerException to be thrown.

See also:

Summary

Public methods

int encode(byte[] src, byte[] dst)

Encodes all bytes from the specified byte array using the Base64 encoding scheme, writing the resulting bytes to the given output byte array, starting at offset 0.

byte[] encode(byte[] src)

Encodes all bytes from the specified byte array into a newly-allocated byte array using the Base64 encoding scheme.

ByteBuffer encode(ByteBuffer buffer)

Encodes all remaining bytes from the specified byte buffer into a newly-allocated ByteBuffer using the Base64 encoding scheme.

String encodeToString(byte[] src)

Encodes the specified byte array into a String using the Base64 encoding scheme.

Base64.Encoder withoutPadding()

Returns an encoder instance that encodes equivalently to this one, but without adding any padding character at the end of the encoded byte data.

OutputStream wrap(OutputStream os)

Wraps an output stream for encoding byte data using the Base64 encoding scheme.

Inherited methods

From class java.lang.Object

Public methods

encode

added in API level 26
int encode (byte[] src, 
                byte[] dst)

Encodes all bytes from the specified byte array using the Base64 encoding scheme, writing the resulting bytes to the given output byte array, starting at offset 0.

It is the responsibility of the invoker of this method to make sure the output byte array dst has enough space for encoding all bytes from the input byte array. No bytes will be written to the output byte array if the output byte array is not big enough.

Parameters
src byte: the byte array to encode

dst byte: the output byte array

Returns
int The number of bytes written to the output byte array

Throws
IllegalArgumentException if dst does not have enough space for encoding all input bytes.

encode

added in API level 26
byte[] encode (byte[] src)

Encodes all bytes from the specified byte array into a newly-allocated byte array using the Base64 encoding scheme. The returned byte array is of the length of the resulting bytes.

Parameters
src byte: the byte array to encode

Returns
byte[] A newly-allocated byte array containing the resulting encoded bytes.

encode

added in API level 26
ByteBuffer encode (ByteBuffer buffer)

Encodes all remaining bytes from the specified byte buffer into a newly-allocated ByteBuffer using the Base64 encoding scheme. Upon return, the source buffer's position will be updated to its limit; its limit will not have been changed. The returned output buffer's position will be zero and its limit will be the number of resulting encoded bytes.

Parameters
buffer ByteBuffer: the source ByteBuffer to encode

Returns
ByteBuffer A newly-allocated byte buffer containing the encoded bytes.

encodeToString

added in API level 26
String encodeToString (byte[] src)

Encodes the specified byte array into a String using the Base64 encoding scheme.

This method first encodes all input bytes into a base64 encoded byte array and then constructs a new String by using the encoded byte array and the ISO-8859-1 charset.

In other words, an invocation of this method has exactly the same effect as invoking new String(encode(src), StandardCharsets.ISO_8859_1).

Parameters
src byte: the byte array to encode

Returns
String A String containing the resulting Base64 encoded characters

withoutPadding

added in API level 26
Base64.Encoder withoutPadding ()

Returns an encoder instance that encodes equivalently to this one, but without adding any padding character at the end of the encoded byte data.

The encoding scheme of this encoder instance is unaffected by this invocation. The returned encoder instance should be used for non-padding encoding operation.

Returns
Base64.Encoder an equivalent encoder that encodes without adding any padding character at the end

wrap

added in API level 26
OutputStream wrap (OutputStream os)

Wraps an output stream for encoding byte data using the Base64 encoding scheme.

It is recommended to promptly close the returned output stream after use, during which it will flush all possible leftover bytes to the underlying output stream. Closing the returned output stream will close the underlying output stream.

Parameters
os OutputStream: the output stream.

Returns
OutputStream the output stream for encoding the byte data into the specified Base64 encoded format

This site uses cookies to store your preferences for site-specific language and display options.

Get the latest Android developer news and tips that will help you find success on Google Play.

* Required Fields

Hooray!

Browse this site in ?

You requested a page in , but your language preference for this site is .

Would you like to change your language preference and browse this site in ? If you want to change your language preference later, use the language menu at the bottom of each page.

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a short survey?
Help us improve the Android developer experience.
(Sep 2017 survey)