public final class B64Code extends Object
Does not insert or interpret whitespace as described in RFC 1521. If you require this you must pre/post process your data.
Note that in a web context the usual case is to not want linebreaks or other white space in the encoded output.
All methods that begin with 'c' will use char arrays (as output on encode, as input on decode).
| Modifier and Type | Method and Description |
|---|---|
static byte[] |
cdecode(char[] b)
Fast Base 64 decode as described in RFC 1421.
|
static byte[] |
cdecode(char[] input,
int inOffset,
int inLen)
Fast Base 64 decode as described in RFC 1421.
|
static char[] |
cencode(byte[] input)
Fast Base 64 encode as described in RFC 1421.
|
static char[] |
cencode(byte[] input,
int inOffset,
int inLen)
Fast Base 64 encode as described in RFC 1421.
|
static byte[] |
decode(byte[] b)
Fast Base 64 decode as described in RFC 1421.
|
static byte[] |
decode(byte[] input,
int inOffset,
int inLen)
Fast Base 64 decode as described in RFC 1421.
|
static byte[] |
decode(String str)
Returns the base 64 decoded bytes.
|
static byte[] |
decode(String str,
int inOffset,
int inLen)
Returns the base 64 decoded bytes.
|
static int |
decodeTo(byte[] output,
int outOffset,
byte[] input,
int inOffset,
int inLen)
Returns the length of the decoded base64 input (written to the provided
output byte array). |
static int |
decodeTo(byte[] output,
int outOffset,
String str,
int inOffset,
int inLen)
Returns the length of the decoded base64 input (written to the provided
output byte array). |
static byte[] |
encode(byte[] input)
Fast Base 64 encode as described in RFC 1421.
|
static byte[] |
encode(byte[] input,
int inOffset,
int inLen)
Fast Base 64 encode as described in RFC 1421.
|
static LinkedBuffer |
encode(byte[] input,
int inOffset,
int inLen,
WriteSession session,
LinkedBuffer lb)
Encodes the byte array into the
LinkedBuffer and grows when full. |
static LinkedBuffer |
sencode(byte[] input,
int inOffset,
int inLen,
WriteSession session,
LinkedBuffer lb)
Encodes the byte array into the
LinkedBuffer and flushes to the OutputStream when buffer is full. |
public static byte[] encode(byte[] input)
public static byte[] encode(byte[] input,
int inOffset,
int inLen)
public static char[] cencode(byte[] input)
public static char[] cencode(byte[] input,
int inOffset,
int inLen)
public static LinkedBuffer encode(byte[] input, int inOffset, int inLen, WriteSession session, LinkedBuffer lb) throws IOException
LinkedBuffer and grows when full.IOExceptionpublic static LinkedBuffer sencode(byte[] input, int inOffset, int inLen, WriteSession session, LinkedBuffer lb) throws IOException
LinkedBuffer and flushes to the OutputStream when buffer is full.IOExceptionpublic static byte[] decode(byte[] b)
public static byte[] cdecode(char[] b)
public static byte[] decode(byte[] input,
int inOffset,
int inLen)
Does not attempt to cope with extra whitespace as described in RFC 1521.
Avoids creating extra copies of the input/output.
Note this code has been flattened for performance.
input - byte array to decode.inOffset - the offset.inLen - the length.IllegalArgumentException - if the input is not a valid B64 encoding.public static byte[] cdecode(char[] input,
int inOffset,
int inLen)
Does not attempt to cope with extra whitespace as described in RFC 1521.
Avoids creating extra copies of the input/output.
Note this code has been flattened for performance.
input - char array to decode.inOffset - the offset.inLen - the length.IllegalArgumentException - if the input is not a valid B64 encoding.public static int decodeTo(byte[] output,
int outOffset,
byte[] input,
int inOffset,
int inLen)
output byte array). The
output byte array must have enough capacity or it will fail.public static byte[] decode(String str)
str must already be base-64 encoded.public static byte[] decode(String str, int inOffset, int inLen)
str must already be base-64 encoded.public static int decodeTo(byte[] output,
int outOffset,
String str,
int inOffset,
int inLen)
output byte array). The
output byte array must have enough capacity or it will fail.Copyright © 2009–2020. All rights reserved.