# Print output for @column tags ?>
Developers

- Design
- Develop
- Distribute

Developer Console

## Most visited

## Recently visited

## Results for

Summary: Methods | Inherited Methods

# Base64.Decoder

`public static class Base64.Decoder`
`extends Object` ``

java.lang.Object
↳ | java.util.Base64.Decoder

This class implements a decoder for decoding byte data using the Base64 encoding scheme as specified in RFC 4648 and RFC 2045.

The Base64 padding character `'='` is accepted and interpreted as the end of the encoded byte data, but is not required. So if the final unit of the encoded byte data only has two or three Base64 characters (without the corresponding padding character(s) padded), they are decoded as if followed by padding character(s). If there is a padding character present in the final unit, the correct number of padding character(s) must be present, otherwise `IllegalArgumentException` ( `IOException` when reading from a Base64 stream) is thrown during decoding.

Instances of `Decoder` 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:

- `Base64.Encoder`

## Summary

### Public methods
`byte[]` | `decode(String src)` Decodes a Base64 encoded String into a newly-allocated byte array using the `Base64` encoding scheme.
`int` | `decode(byte[] src, byte[] dst)` Decodes all bytes from the input byte array using the `Base64` encoding scheme, writing the results into the given output byte array, starting at offset 0.
`byte[]` | `decode(byte[] src)` Decodes all bytes from the input byte array using the `Base64` encoding scheme, writing the results into a newly-allocated output byte array.
`ByteBuffer` | `decode(ByteBuffer buffer)` Decodes all bytes from the input byte buffer using the `Base64` encoding scheme, writing the results into a newly-allocated ByteBuffer.
`InputStream` | `wrap(InputStream is)` Returns an input stream for decoding `Base64` encoded byte stream.

### Inherited methods
From class `java.lang.Object`
`Object` | `clone()` Creates and returns a copy of this object.
`boolean` | `equals(Object obj)` Indicates whether some other object is "equal to" this one.
`void` | `finalize()` Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.
`final Class<?>` | `getClass()` Returns the runtime class of this `Object`.
`int` | `hashCode()` Returns a hash code value for the object.
`final void` | `notify()` Wakes up a single thread that is waiting on this object's monitor.
`final void` | `notifyAll()` Wakes up all threads that are waiting on this object's monitor.
`String` | `toString()` Returns a string representation of the object.
`final void` | `wait(long timeout, int nanos)` Causes the current thread to wait until another thread invokes the `notify()` method or the `notifyAll()` method for this object, or some other thread interrupts the current thread, or a certain amount of real time has elapsed.
`final void` | `wait(long timeout)` Causes the current thread to wait until either another thread invokes the `notify()` method or the `notifyAll()` method for this object, or a specified amount of time has elapsed.
`final void` | `wait()` Causes the current thread to wait until another thread invokes the `notify()` method or the `notifyAll()` method for this object.

## Public methods

### decode

    public byte[] decode (String src)

Decodes a Base64 encoded String into a newly-allocated byte array using the `Base64` encoding scheme.

An invocation of this method has exactly the same effect as invoking `decode(src.getBytes(StandardCharsets.ISO_8859_1))`

Parameters
`src` | `String`: the string to decode

Returns
`byte[]` | A newly-allocated byte array containing the decoded bytes.

Throws
`IllegalArgumentException` | if `src` is not in valid Base64 scheme

### decode

    public int decode (byte[] src,
                    byte[] dst)

Decodes all bytes from the input byte array using the `Base64` encoding scheme, writing the results into 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 decoding all bytes from the input byte array. No bytes will be be written to the output byte array if the output byte array is not big enough.

If the input byte array is not in valid Base64 encoding scheme then some bytes may have been written to the output byte array before IllegalargumentException is thrown.

Parameters
`src` | `byte`: the byte array to decode
`dst` | `byte`: the output byte array

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

Throws
`IllegalArgumentException` | if `src` is not in valid Base64 scheme, or `dst` does not have enough space for decoding all input bytes.

### decode

    public byte[] decode (byte[] src)

Decodes all bytes from the input byte array using the `Base64` encoding scheme, writing the results into a newly-allocated output byte array. The returned byte array is of the length of the resulting bytes.

Parameters
`src` | `byte`: the byte array to decode

Returns
`byte[]` | A newly-allocated byte array containing the decoded bytes.

Throws
`IllegalArgumentException` | if `src` is not in valid Base64 scheme

### decode

    public ByteBuffer decode (ByteBuffer buffer)

Decodes all bytes from the input byte buffer using the `Base64` encoding scheme, writing the results into a newly-allocated ByteBuffer.

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 decoded bytes

`IllegalArgumentException` is thrown if the input buffer is not in valid Base64 encoding scheme. The position of the input buffer will not be advanced in this case.

Parameters
`buffer` | `ByteBuffer`: the ByteBuffer to decode

Returns
`ByteBuffer` | A newly-allocated byte buffer containing the decoded bytes

Throws
`IllegalArgumentException` | if `src` is not in valid Base64 scheme.

### wrap

    public InputStream wrap (InputStream is)

Returns an input stream for decoding `Base64` encoded byte stream.

The `read` methods of the returned `InputStream` will throw `IOException` when reading bytes that cannot be decoded.

Closing the returned input stream will close the underlying input stream.

Parameters
`is` | `InputStream`: the input stream

Returns
`InputStream` | the input stream for decoding the specified Base64 encoded byte stream

Full name *
Email address *
Company / developer name
One of your Play Store app URLs *
Which best describes your business:*
Apps
Games
Apps & Games
*
*