public final class Base64 extends Object
sun.misc.Encoder()/Decoder().String this version is about three
times as fast due to the fact that the Commons Codec result has to be recoded
to a String from byte[], which is very expensive.sun.misc.Encoder()/Decoder() produce temporary arrays but
since performance is quite low it probably does.| Modifier and Type | Method and Description |
|---|---|
static byte[] |
decode(byte[] sArr)
Decodes a BASE64 encoded byte array.
|
static byte[] |
decode(char[] sArr)
Decodes a BASE64 encoded char array.
|
static byte[] |
decode(String str)
Decodes a BASE64 encoded
String. |
static byte[] |
decodeFast(byte[] sArr)
Decodes a BASE64 encoded byte array that is known to be resonably well
formatted.
|
static byte[] |
decodeFast(char[] sArr)
Decodes a BASE64 encoded char array that is known to be resonably well
formatted.
|
static byte[] |
decodeFast(String s)
Decodes a BASE64 encoded string that is known to be resonably well
formatted.
|
static String |
encode(byte[] content)
This method is using
encode(byte[], boolean), and it only exists
so we don't break the API. |
static String |
encode(byte[] sArr,
boolean lineSep)
Encodes a raw byte array into a BASE64
String representation
i accordance with RFC 2045. |
static byte[] |
encodeToByte(byte[] sArr,
boolean lineSep)
Encodes a raw byte array into a BASE64
byte[] representation
i accordance with RFC 2045. |
static char[] |
encodeToChar(byte[] sArr,
boolean lineSep)
Encodes a raw byte array into a BASE64
char[] representation
i accordance with RFC 2045. |
public static byte[] decode(byte[] sArr)
sArr - The source array. Length 0 will return an empty array.
null will throw an exception.null if the legal characters (including '=') isn't
divideable by 4. (I.e. definitely corrupted).public static byte[] decode(char[] sArr)
sArr - The source array. null or length 0 will return an
empty array.null if the legal characters (including '=') isn't
divideable by 4. (I.e. definitely corrupted).public static byte[] decode(String str)
String. All illegal characters will
be ignored and can handle both strings with and without line separators.decode(str.toCharArray()) instead. That will create a
temporary array though. This version will use str.charAt(i)
to iterate the string.str - The source string. null or length 0 will return
an empty array.null if the legal characters (including '=') isn't
divideable by 4. (I.e. definitely corrupted).public static byte[] decodeFast(byte[] sArr)
decode(byte[]).
The preconditions are:sArr - The source array. Length 0 will return an empty array.
null will throw an exception.public static byte[] decodeFast(char[] sArr)
decode(char[]).
The preconditions are:sArr - The source array. Length 0 will return an empty array.
null will throw an exception.public static byte[] decodeFast(String s)
decode(String).
The preconditions are:s - The source string. Length 0 will return an empty array.
null will throw an exception.public static String encode(byte[] content)
encode(byte[], boolean), and it only exists
so we don't break the API.content - The bytearray that needs to be Base64 encodedpublic static String encode(byte[] sArr, boolean lineSep)
String representation
i accordance with RFC 2045.sArr - The bytes to convert. If null or length 0 an
empty array will be returned.lineSep - Optional "\r\n" after 76 characters, unless end of file.null.public static byte[] encodeToByte(byte[] sArr,
boolean lineSep)
byte[] representation
i accordance with RFC 2045.sArr - The bytes to convert. If null or length 0 an
empty array will be returned.lineSep - Optional "\r\n" after 76 characters, unless end of file.null.public static char[] encodeToChar(byte[] sArr,
boolean lineSep)
char[] representation
i accordance with RFC 2045.sArr - The bytes to convert. If null or length 0 an
empty array will be returned.lineSep - Optional "\r\n" after 76 characters, unless end of file.null.Copyright © 2025 Open Identity Platform Community. All rights reserved.