- java.lang.Object
-
- java.util.Base64.Encoder
-
- Enclosing class:
- Base64
public static class Base64.Encoder extends Object
该类使用RFC 4648和RFC 2045中规定的Base64编码方案来实现用于编码字节数据的编码器。Base64.Encoder
类的实例可以安全地被多个并发线程使用。除非另有说明,否则将
null
参数传递给null
的方法将导致抛出NullPointerException
。- 从以下版本开始:
- 1.8
- 另请参见:
-
Base64.Decoder
-
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 byte[]
encode(byte[] src)
使用Base64
编码方案将指定字节数组中的所有字节编码为新分配的字节数组。int
encode(byte[] src, byte[] dst)
使用Base64
编码方案对来自指定字节数组的所有字节进行编码,将生成的字节写入给定的输出字节数组,从偏移量0开始。ByteBuffer
encode(ByteBuffer buffer)
使用Base64
编码方案将所有剩余字节从指定的字节缓冲区编码到新分配的ByteBuffer中。String
encodeToString(byte[] src)
使用Base64
编码方案将指定的字节数组编码为字符串。Base64.Encoder
withoutPadding()
返回一个编码器实例,编码器等效于此编码器实例,但不会在编码字节数据的末尾添加任何填充字符。OutputStream
wrap(OutputStream os)
使用Base64
编码方案包装用于编码字节数据的输出流。
-
-
-
方法详细信息
-
encode
public byte[] encode(byte[] src)
使用Base64
编码方案将指定字节数组中的所有字节编码为新分配的字节数组。 返回的字节数组是生成字节的长度。- 参数
-
src
- 要编码的字节数组 - 结果
- 一个新分配的字节数组,包含生成的编码字节。
-
encode
public int encode(byte[] src, byte[] dst)
使用Base64
编码方案对来自指定字节数组的所有字节进行编码,将生成的字节写入给定的输出字节数组,从偏移0开始。该方法的调用者有责任确保输出字节数组
dst
具有足够的空间来编码来自输入字节数组的所有字节。 如果输出字节数组不够大,则不会将字节写入输出字节数组。- 参数
-
src
- 要编码的字节数组 -
dst
- 输出字节数组 - 结果
- 写入输出字节数组的字节数
- 异常
-
IllegalArgumentException
- 如果dst
没有足够的空间来编码所有输入字节。
-
encodeToString
public String encodeToString(byte[] src)
使用Base64
编码方案将指定的字节数组编码为字符串。该方法首先将所有输入字节编码为base64编码字节数组,然后使用编码字节数组和
ISO-8859-1
字符集构造一个新的字符串。换句话说,这个方法的调用与调用
new String(encode(src), StandardCharsets.ISO_8859_1)
有完全相同的效果。- 参数
-
src
- 要编码的字节数组 - 结果
- 包含生成的Base64编码字符的字符串
-
encode
public ByteBuffer encode(ByteBuffer buffer)
使用Base64
编码方案将所有剩余字节从指定的字节缓冲区编码为新分配的ByteBuffer。 返回时,源缓冲区的位置将更新为其限制; 其限制将不会改变。 返回的输出缓冲区的位置将为零,其限制将是生成的编码字节数。- 参数
-
buffer
- 来源ByteBuffer进行编码 - 结果
- 包含编码字节的新分配的字节缓冲区。
-
wrap
public OutputStream wrap(OutputStream os)
使用Base64
编码方案包装用于编码字节数据的输出流。建议在使用后立即关闭返回的输出流,在此期间,它会将所有可能的剩余字节刷新到底层输出流。 关闭返回的输出流将关闭底层输出流。
- 参数
-
os
- 输出流。 - 结果
- 用于将字节数据编码为指定的Base64编码格式的输出流
-
withoutPadding
public Base64.Encoder withoutPadding()
返回一个编码器实例,编码器等效于此编码器实例,但不会在编码字节数据的末尾添加任何填充字符。该编码器实例的编码方案不受此调用的影响。 返回的编码器实例应用于非填充编码操作。
- 结果
- 一个等效编码器,编码而不会在末尾添加任何填充字符
-
-