- 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
-
-
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 byte[]
encode(byte[] src)
使用Base64
编码方案将指定字节数组中的所有字节编码为新分配的字节数组。int
encode(byte[] src, byte[] dst)
使用Base64
编码方案对指定字节数组中的所有字节进行编码,将结果字节写入给定的输出字节数组,从偏移量0开始。ByteBuffer
encode(ByteBuffer buffer)
使用Base64
编码方案将指定字节缓冲区中的所有剩余字节编码为新分配的ByteBuffer。String
encodeToString(byte[] src)
使用Base64
编码方案将指定的字节数组编码为String。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
编码方案将指定的字节数组编码为String。此方法首先将所有输入字节编码为base64编码的字节数组,然后使用编码的字节数组和
ISO-8859-1
字符集构造新的String。换句话说,调用此方法与调用
new String(encode(src), StandardCharsets.ISO_8859_1)
具有完全相同的效果。- 参数
-
src
- 要编码的字节数组 - 结果
- 包含生成的Base64编码字符的String
-
encode
public ByteBuffer encode(ByteBuffer buffer)
使用Base64
编码方案将指定字节缓冲区中的所有剩余字节编码为新分配的ByteBuffer。 返回时,源缓冲区的位置将更新为其限制; 它的限制不会改变。 返回的输出缓冲区的位置将为零,其限制将是结果编码字节的数量。- 参数
-
buffer
- 要编码的源ByteBuffer - 结果
- 包含编码字节的新分配字节缓冲区。
-
wrap
public OutputStream wrap(OutputStream os)
使用Base64
编码方案包装用于编码字节数据的输出流。建议在使用后立即关闭返回的输出流,在此期间它会将所有可能的剩余字节刷新到底层输出流。 关闭返回的输出流将关闭基础输出流。
- 参数
-
os
- 输出流。 - 结果
- 用于将字节数据编码为指定的Base64编码格式的输出流
-
withoutPadding
public Base64.Encoder withoutPadding()
返回一个编码器实例,该编码器实例与此实例等效编码,但不在编码字节数据的末尾添加任何填充字符。此编码器实例的编码方案不受此调用的影响。 返回的编码器实例应该用于非填充编码操作。
- 结果
- 一个等效的编码器,编码时不添加任何填充字符
-
-