public abstract class Base64Utils extends Object
Adapts to either Java 8's Base64 class or Apache Commons Codec's
Base64 class. With neither Java 8 nor Commons
Codec present, encode(byte[])/decode(byte[]) calls will throw an IllegalStateException.
However, as of Spring 4.2, encodeToString(byte[]) and decodeFromString(java.lang.String) will
nevertheless work since they can delegate to the JAXB DatatypeConverter as a fallback.
However, this does not apply when using the "UrlSafe" methods for RFC 4648 "URL and
Filename Safe Alphabet"; a delegate is required.
Note: Apache Commons Codec does not add padding (=) when encoding
with the URL and Filename Safe Alphabet.
Base64,
Base64,
DatatypeConverter.printBase64Binary(byte[]),
DatatypeConverter.parseBase64Binary(java.lang.String)| Constructor and Description |
|---|
Base64Utils() |
| Modifier and Type | Method and Description |
|---|---|
static byte[] |
decode(byte[] src)
Base64-decode the given byte array.
|
static byte[] |
decodeFromString(String src)
Base64-decode the given byte array from an UTF-8 String.
|
static byte[] |
decodeFromUrlSafeString(String src)
Base64-decode the given byte array from an UTF-8 String using the RFC 4648
"URL and Filename Safe Alphabet".
|
static byte[] |
decodeUrlSafe(byte[] src)
Base64-decode the given byte array using the RFC 4648
"URL and Filename Safe Alphabet".
|
static byte[] |
encode(byte[] src)
Base64-encode the given byte array.
|
static String |
encodeToString(byte[] src)
Base64-encode the given byte array to a String.
|
static String |
encodeToUrlSafeString(byte[] src)
Base64-encode the given byte array to a String using the RFC 4648
"URL and Filename Safe Alphabet".
|
static byte[] |
encodeUrlSafe(byte[] src)
Base64-encode the given byte array using the RFC 4648
"URL and Filename Safe Alphabet".
|
public static byte[] encode(byte[] src)
src - the original byte array (may be null)null if the input was null)IllegalStateException - if Base64 encoding between byte arrays is not
supported, i.e. neither Java 8 nor Apache Commons Codec is present at runtimepublic static byte[] decode(byte[] src)
src - the encoded byte array (may be null)null if the input was null)IllegalStateException - if Base64 encoding between byte arrays is not
supported, i.e. neither Java 8 nor Apache Commons Codec is present at runtimepublic static byte[] encodeUrlSafe(byte[] src)
src - the original byte array (may be null)null if the input was null)IllegalStateException - if Base64 encoding between byte arrays is not
supported, i.e. neither Java 8 nor Apache Commons Codec is present at runtimepublic static byte[] decodeUrlSafe(byte[] src)
src - the encoded byte array (may be null)null if the input was null)IllegalStateException - if Base64 encoding between byte arrays is not
supported, i.e. neither Java 8 nor Apache Commons Codec is present at runtimepublic static String encodeToString(byte[] src)
src - the original byte array (may be null)null if the input was null)public static byte[] decodeFromString(String src)
src - the encoded UTF-8 String (may be null)null if the input was null)public static String encodeToUrlSafeString(byte[] src)
src - the original byte array (may be null)null if the input was null)IllegalStateException - if Base64 encoding between byte arrays is not
supported, i.e. neither Java 8 nor Apache Commons Codec is present at runtimepublic static byte[] decodeFromUrlSafeString(String src)
src - the encoded UTF-8 String (may be null)null if the input was null)IllegalStateException - if Base64 encoding between byte arrays is not
supported, i.e. neither Java 8 nor Apache Commons Codec is present at runtime