public class Base64
extends java.lang.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.| 限定符和类型 | 类和说明 |
|---|---|
static class |
Base64.URLSafe |
| 构造器和说明 |
|---|
Base64() |
| 限定符和类型 | 方法和说明 |
|---|---|
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(java.lang.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(java.lang.String s)
Decodes a BASE64 encoded string that is known to be resonably well formatted.
|
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. |
static java.lang.String |
encodeToString(byte[] sArr,
boolean lineSep)
Encodes a raw byte array into a BASE64
String representation i accordance with RFC 2045. |
public static final 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.public static final 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 final 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 final 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 final 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 final 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 final java.lang.String encodeToString(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 final byte[] decode(java.lang.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 final byte[] decodeFast(java.lang.String s)
decode(String). The preconditions are:s - The source string. Length 0 will return an empty array. null will throw an exception.