Package com.qiniu.util
Class Base64
- java.lang.Object
-
- com.qiniu.util.Base64
-
public final class Base64 extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description static int
CRLF
Encoder flag bit to indicate lines should be terminated with a CRLF pair instead of just an LF.static int
DEFAULT
Default values for encoder/decoder flags.static int
NO_CLOSE
Flag to pass to indicate that it should not close the output stream it is wrapping when it itself is closed.static int
NO_PADDING
Encoder flag bit to omit the padding '=' characters at the end of the output (if any).static int
NO_WRAP
Encoder flag bit to omit all line terminators (i.e., the output will be on one long line).static int
URL_SAFE
Encoder/decoder flag bit to indicate using the "URL and filename safe" variant of Base64 (see RFC 3548 section 4) where-
and_
are used in place of+
and/
.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static byte[]
decode(byte[] input, int flags)
Decode the Base64-encoded data in input and return the data in a new byte array.static byte[]
decode(byte[] input, int offset, int len, int flags)
Decode the Base64-encoded data in input and return the data in a new byte array.static byte[]
decode(java.lang.String str, int flags)
Decode the Base64-encoded data in input and return the data in a new byte array.static byte[]
encode(byte[] input, int flags)
Base64-encode the given data and return a newly allocated byte[] with the result.static byte[]
encode(byte[] input, int offset, int len, int flags)
Base64-encode the given data and return a newly allocated byte[] with the result.static java.lang.String
encodeToString(byte[] input, int flags)
Base64-encode the given data and return a newly allocated String with the result.static java.lang.String
encodeToString(byte[] input, int offset, int len, int flags)
Base64-encode the given data and return a newly allocated String with the result.
-
-
-
Field Detail
-
DEFAULT
public static final int DEFAULT
Default values for encoder/decoder flags.- See Also:
- Constant Field Values
-
NO_PADDING
public static final int NO_PADDING
Encoder flag bit to omit the padding '=' characters at the end of the output (if any).- See Also:
- Constant Field Values
-
NO_WRAP
public static final int NO_WRAP
Encoder flag bit to omit all line terminators (i.e., the output will be on one long line).- See Also:
- Constant Field Values
-
CRLF
public static final int CRLF
Encoder flag bit to indicate lines should be terminated with a CRLF pair instead of just an LF. Has no effect ifNO_WRAP
is specified as well.- See Also:
- Constant Field Values
-
URL_SAFE
public static final int URL_SAFE
Encoder/decoder flag bit to indicate using the "URL and filename safe" variant of Base64 (see RFC 3548 section 4) where-
and_
are used in place of+
and/
.- See Also:
- Constant Field Values
-
NO_CLOSE
public static final int NO_CLOSE
Flag to pass to indicate that it should not close the output stream it is wrapping when it itself is closed.- See Also:
- Constant Field Values
-
-
Method Detail
-
decode
public static byte[] decode(java.lang.String str, int flags)
Decode the Base64-encoded data in input and return the data in a new byte array.The padding '=' characters at the end are considered optional, but if any are present, there must be the correct number of them.
- Parameters:
str
- the input String to decode, which is converted to bytes using the default charsetflags
- controls certain features of the decoded output. PassDEFAULT
to decode standard Base64.- Returns:
- Decode Data
- Throws:
java.lang.IllegalArgumentException
- if the input contains incorrect padding
-
decode
public static byte[] decode(byte[] input, int flags)
Decode the Base64-encoded data in input and return the data in a new byte array.The padding '=' characters at the end are considered optional, but if any are present, there must be the correct number of them.
- Parameters:
input
- the input array to decodeflags
- controls certain features of the decoded output. PassDEFAULT
to decode standard Base64.- Returns:
- Decode Data
- Throws:
java.lang.IllegalArgumentException
- if the input contains incorrect padding
-
decode
public static byte[] decode(byte[] input, int offset, int len, int flags)
Decode the Base64-encoded data in input and return the data in a new byte array.The padding '=' characters at the end are considered optional, but if any are present, there must be the correct number of them.
- Parameters:
input
- the data to decodeoffset
- the position within the input array at which to startlen
- the number of bytes of input to decodeflags
- controls certain features of the decoded output. PassDEFAULT
to decode standard Base64.- Returns:
- Decode Data
- Throws:
java.lang.IllegalArgumentException
- if the input contains incorrect padding
-
encodeToString
public static java.lang.String encodeToString(byte[] input, int flags)
Base64-encode the given data and return a newly allocated String with the result.- Parameters:
input
- the data to encodeflags
- controls certain features of the encoded output. PassingDEFAULT
results in output that adheres to RFC 2045.- Returns:
- Decode Data
-
encodeToString
public static java.lang.String encodeToString(byte[] input, int offset, int len, int flags)
Base64-encode the given data and return a newly allocated String with the result.- Parameters:
input
- the data to encodeoffset
- the position within the input array at which to startlen
- the number of bytes of input to encodeflags
- controls certain features of the encoded output. PassingDEFAULT
results in output that adheres to RFC 2045.- Returns:
- Decode Data
-
encode
public static byte[] encode(byte[] input, int flags)
Base64-encode the given data and return a newly allocated byte[] with the result.- Parameters:
input
- the data to encodeflags
- controls certain features of the encoded output. PassingDEFAULT
results in output that adheres to RFC 2045.- Returns:
- Decode Data
-
encode
public static byte[] encode(byte[] input, int offset, int len, int flags)
Base64-encode the given data and return a newly allocated byte[] with the result.- Parameters:
input
- the data to encodeoffset
- the position within the input array at which to startlen
- the number of bytes of input to encodeflags
- controls certain features of the encoded output. PassingDEFAULT
results in output that adheres to RFC 2045.- Returns:
- Decode Data
-
-