Base64.Encoder
java.lang.Object
|—java.util.Base64.Encoder
public static class Base64.Encoder
extends Object
此类实现了一个编码器,用于使用 RFC 4648 和 RFC 2045 中指定的 Base64 编码方案对字节数据进行编码。
Encoder 类的实例可供多个并发线程安全使用。
除非另有说明,否则将 null 参数传递给此类的方法将导致抛出 NullPointerException。
方法总结
修饰符和类型 | 方法 | 描述 |
---|---|---|
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 编码方案包装用于编码字节数据的输出流。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
方法详情
encode
public byte[] encode(byte[] src)
使用 Base64 编码方案将指定字节数组中的所有字节编码为新分配的字节数组。 返回的字节数组是结果字节的长度。
参数:
参数名称 | 参数描述 |
---|---|
src | 要编码的字节数组 |
返回:
一个新分配的字节数组,包含生成的编码字节。
encode
public int encode(byte[] src, byte[] dst)
使用 Base64 编码方案对指定字节数组中的所有字节进行编码,将结果字节写入给定的输出字节数组,从偏移量 0 开始。
此方法的调用者有责任确保输出字节数组 dst 有足够的空间来编码输入字节数组中的所有字节。 如果输出字节数组不够大,则不会将任何字节写入输出字节数组。
参数:
参数名称 | 参数描述 |
---|---|
src | 要编码的字节数组 |
dst | 输出字节数组 |
返回:
写入输出字节数组的字节数
Throws:
Throw名称 | Throw描述 |
---|---|
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()
返回与此等效编码的编码器实例,但在编码字节数据的末尾不添加任何填充字符。
此编码器实例的编码方案不受此调用的影响。 返回的编码器实例应用于非填充编码操作。
返回:
一个等效的编码器,在末尾不添加任何填充字符进行编码