public static class Base64.Decoder extends Object
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 Base64.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.
Base64.Encoder
| Modifier and Type | Method and Description |
|---|---|
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.
|
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.
|
ByteBuffer |
decode(ByteBuffer
Decodes all bytes from the input byte buffer using the
Base64 encoding scheme, writing the results into a newly-allocated ByteBuffer.
|
byte[] |
decode(String
Decodes a Base64 encoded String into a newly-allocated byte array using the
Base64 encoding scheme.
|
InputStream |
wrap(InputStream
Returns an input stream for decoding
Base64 encoded byte stream.
|
public byte[] decode(byte[] src)
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.
src - the byte array to decode
IllegalArgumentException - if
src is not in valid Base64 scheme
public byte[] decode(Stringsrc)
Base64 encoding scheme.
An invocation of this method has exactly the same effect as invoking decode(src.getBytes(StandardCharsets.ISO_8859_1))
src - the string to decode
IllegalArgumentException - if
src is not in valid Base64 scheme
public int decode(byte[] src,
byte[] dst)
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.
src - the byte array to decode
dst - the output byte array
IllegalArgumentException - if
src is not in valid Base64 scheme, or
dst does not have enough space for decoding all input bytes.
public ByteBufferdecode(ByteBuffer buffer)
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.
buffer - the ByteBuffer to decode
IllegalArgumentException - if
src is not in valid Base64 scheme.
public InputStreamwrap(InputStream is)
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.
is - the input stream