类 Base64
java.lang.Object
net.apexes.commons.lang.Base64
-
构造器概要
构造器 -
方法概要
修饰符和类型方法说明static final byte[]decode(byte[] sArr) Decodes a BASE64 encoded byte array.static final byte[]decode(char[] sArr) Decodes a BASE64 encoded char array.static final byte[]Decodes a BASE64 encodedString.static final byte[]decodeFast(byte[] sArr) Decodes a BASE64 encoded byte array that is known to be resonably well formatted.static final byte[]decodeFast(char[] sArr) Decodes a BASE64 encoded char array that is known to be resonably well formatted.static final byte[]decodeFast(String s) Decodes a BASE64 encoded string that is known to be resonably well formatted.static final byte[]encodeToByte(byte[] sArr, boolean lineSep) Encodes a raw byte array into a BASE64byte[]representation i accordance with RFC 2045.static final char[]encodeToChar(byte[] sArr, boolean lineSep) Encodes a raw byte array into a BASE64char[]representation i accordance with RFC 2045.static final StringencodeToString(byte[] sArr, boolean lineSep) Encodes a raw byte array into a BASE64Stringrepresentation i accordance with RFC 2045.
-
构造器详细资料
-
Base64
public Base64()
-
-
方法详细资料
-
encodeToChar
public static final char[] encodeToChar(byte[] sArr, boolean lineSep) Encodes a raw byte array into a BASE64char[]representation i accordance with RFC 2045.- 参数:
sArr- The bytes to convert. Ifnullor length 0 an empty array will be returned.lineSep- Optional "\r\n" after 76 characters, unless end of file.
No line separator will be in breach of RFC 2045 which specifies max 76 per line but will be a little faster.- 返回:
- A BASE64 encoded array. Never
null.
-
decode
public static final byte[] decode(char[] sArr) Decodes a BASE64 encoded char array. All illegal characters will be ignored and can handle both arrays with and without line separators.- 参数:
sArr- The source array.nullor length 0 will return an empty array.- 返回:
- The decoded array of bytes. May be of length 0. Will be
nullif the legal characters (including '=') isn't divideable by 4. (I.e. definitely corrupted).
-
decodeFast
public static final byte[] decodeFast(char[] sArr) Decodes a BASE64 encoded char array that is known to be resonably well formatted. The method is about twice as fast asdecode(char[]). The preconditions are:
+ The array must have a line length of 76 chars OR no line separators at all (one line).
+ Line separator must be "\r\n", as specified in RFC 2045 + The array must not contain illegal characters within the encoded string
+ The array CAN have illegal characters at the beginning and end, those will be dealt with appropriately.- 参数:
sArr- The source array. Length 0 will return an empty array.nullwill throw an exception.- 返回:
- The decoded array of bytes. May be of length 0.
-
encodeToByte
public static final byte[] encodeToByte(byte[] sArr, boolean lineSep) Encodes a raw byte array into a BASE64byte[]representation i accordance with RFC 2045.- 参数:
sArr- The bytes to convert. Ifnullor length 0 an empty array will be returned.lineSep- Optional "\r\n" after 76 characters, unless end of file.
No line separator will be in breach of RFC 2045 which specifies max 76 per line but will be a little faster.- 返回:
- A BASE64 encoded array. Never
null.
-
decode
public static final byte[] decode(byte[] sArr) Decodes a BASE64 encoded byte array. All illegal characters will be ignored and can handle both arrays with and without line separators.- 参数:
sArr- The source array. Length 0 will return an empty array.nullwill throw an exception.- 返回:
- The decoded array of bytes. May be of length 0. Will be
nullif the legal characters (including '=') isn't divideable by 4. (I.e. definitely corrupted).
-
decodeFast
public static final byte[] decodeFast(byte[] sArr) Decodes a BASE64 encoded byte array that is known to be resonably well formatted. The method is about twice as fast asdecode(byte[]). The preconditions are:
+ The array must have a line length of 76 chars OR no line separators at all (one line).
+ Line separator must be "\r\n", as specified in RFC 2045 + The array must not contain illegal characters within the encoded string
+ The array CAN have illegal characters at the beginning and end, those will be dealt with appropriately.- 参数:
sArr- The source array. Length 0 will return an empty array.nullwill throw an exception.- 返回:
- The decoded array of bytes. May be of length 0.
-
encodeToString
Encodes a raw byte array into a BASE64Stringrepresentation i accordance with RFC 2045.- 参数:
sArr- The bytes to convert. Ifnullor length 0 an empty array will be returned.lineSep- Optional "\r\n" after 76 characters, unless end of file.
No line separator will be in breach of RFC 2045 which specifies max 76 per line but will be a little faster.- 返回:
- A BASE64 encoded array. Never
null.
-
decode
Decodes a BASE64 encodedString. All illegal characters will be ignored and can handle both strings with and without line separators.
Note! It can be up to about 2x the speed to calldecode(str.toCharArray())instead. That will create a temporary array though. This version will usestr.charAt(i)to iterate the string.- 参数:
str- The source string.nullor length 0 will return an empty array.- 返回:
- The decoded array of bytes. May be of length 0. Will be
nullif the legal characters (including '=') isn't divideable by 4. (I.e. definitely corrupted).
-
decodeFast
Decodes a BASE64 encoded string that is known to be resonably well formatted. The method is about twice as fast asdecode(String). The preconditions are:
+ The array must have a line length of 76 chars OR no line separators at all (one line).
+ Line separator must be "\r\n", as specified in RFC 2045 + The array must not contain illegal characters within the encoded string
+ The array CAN have illegal characters at the beginning and end, those will be dealt with appropriately.- 参数:
s- The source string. Length 0 will return an empty array.nullwill throw an exception.- 返回:
- The decoded array of bytes. May be of length 0.
-