鴻蒙OS Base64.Encoder

2022-07-12 17:59 更新

Base64.Encoder

java.lang.Object

|---java.util.Base64.Encoder

public static class Base64.Encoder
extends Object

此類實(shí)現(xiàn)了一個(gè)編碼器,用于使用 RFC 4648 和 RFC 2045 中指定的 Base64 編碼方案對(duì)字節(jié)數(shù)據(jù)進(jìn)行編碼。

Encoder 類的實(shí)例可供多個(gè)并發(fā)線程安全使用。

除非另有說明,否則將 null 參數(shù)傳遞給此類的方法將導(dǎo)致拋出 NullPointerException。

方法總結(jié)

修飾符和類型 方法 描述
byte[] encode(byte[] src) 使用 Base64 編碼方案將指定字節(jié)數(shù)組中的所有字節(jié)編碼為新分配的字節(jié)數(shù)組。
int encode(byte[] src, byte[] dst) 使用 Base64 編碼方案對(duì)指定字節(jié)數(shù)組中的所有字節(jié)進(jìn)行編碼,將結(jié)果字節(jié)寫入給定的輸出字節(jié)數(shù)組,從偏移量 0 開始。
ByteBuffer encode(ByteBuffer buffer) 使用 Base64 編碼方案將指定字節(jié)緩沖區(qū)中的所有剩余字節(jié)編碼到新分配的 ByteBuffer 中。
String encodeToString(byte[] src) 使用 Base64 編碼方案將指定的字節(jié)數(shù)組編碼為字符串。
Base64.Encoder withoutPadding() 返回與此等效編碼的編碼器實(shí)例,但在編碼字節(jié)數(shù)據(jù)的末尾不添加任何填充字符。
OutputStream wrap(OutputStream os) 使用 Base64 編碼方案包裝用于編碼字節(jié)數(shù)據(jù)的輸出流。
從類 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

方法詳情

encode

public byte[] encode(byte[] src)

使用 Base64 編碼方案將指定字節(jié)數(shù)組中的所有字節(jié)編碼為新分配的字節(jié)數(shù)組。 返回的字節(jié)數(shù)組是結(jié)果字節(jié)的長度。

參數(shù):

參數(shù)名稱 參數(shù)描述
src 要編碼的字節(jié)數(shù)組

返回:

一個(gè)新分配的字節(jié)數(shù)組,包含生成的編碼字節(jié)。

encode

public int encode(byte[] src, byte[] dst)

使用 Base64 編碼方案對(duì)指定字節(jié)數(shù)組中的所有字節(jié)進(jìn)行編碼,將結(jié)果字節(jié)寫入給定的輸出字節(jié)數(shù)組,從偏移量 0 開始。

此方法的調(diào)用者有責(zé)任確保輸出字節(jié)數(shù)組 dst 有足夠的空間來編碼輸入字節(jié)數(shù)組中的所有字節(jié)。 如果輸出字節(jié)數(shù)組不夠大,則不會(huì)將任何字節(jié)寫入輸出字節(jié)數(shù)組。

參數(shù):

參數(shù)名稱 參數(shù)描述
src 要編碼的字節(jié)數(shù)組
dst 輸出字節(jié)數(shù)組

返回:

寫入輸出字節(jié)數(shù)組的字節(jié)數(shù)

Throws:

Throw名稱 Throw描述
IllegalArgumentException 如果 dst 沒有足夠的空間來編碼所有輸入字節(jié)。

encodeToString

public String encodeToString(byte[] src)

使用 Base64 編碼方案將指定的字節(jié)數(shù)組編碼為字符串。

此方法首先將所有輸入字節(jié)編碼為 base64 編碼的字節(jié)數(shù)組,然后使用編碼的字節(jié)數(shù)組和 ISO-8859-1 字符集構(gòu)造一個(gè)新的字符串。

換句話說,調(diào)用此方法與調(diào)用 new String(encode(src), StandardCharsets.ISO_8859_1) 具有完全相同的效果。

參數(shù):

參數(shù)名稱 參數(shù)描述
src 要編碼的字節(jié)數(shù)組

返回:

包含生成的 Base64 編碼字符的字符串

encode

public ByteBuffer encode(ByteBuffer buffer)

使用 Base64 編碼方案將指定字節(jié)緩沖區(qū)中的所有剩余字節(jié)編碼到新分配的 ByteBuffer 中。 返回后,源緩沖區(qū)的位置將更新到其限制; 它的限制不會(huì)改變。 返回的輸出緩沖區(qū)的位置將為零,其限制將是生成的編碼字節(jié)數(shù)。

參數(shù):

參數(shù)名稱 參數(shù)描述
buffer 要編碼的源 ByteBuffer

返回:

一個(gè)新分配的包含編碼字節(jié)的字節(jié)緩沖區(qū)。

wrap

public OutputStream wrap(OutputStream os)

使用 Base64 編碼方案包裝用于編碼字節(jié)數(shù)據(jù)的輸出流。

建議使用后及時(shí)關(guān)閉返回的輸出流,在此期間它將所有可能的剩余字節(jié)刷新到底層輸出流。 關(guān)閉返回的輸出流將關(guān)閉底層輸出流。

參數(shù):

參數(shù)名稱 參數(shù)描述
os 輸出流。

返回:

用于將字節(jié)數(shù)據(jù)編碼為指定 Base64 編碼格式的輸出流

withoutPadding

public Base64.Encoder withoutPadding()

返回與此等效編碼的編碼器實(shí)例,但在編碼字節(jié)數(shù)據(jù)的末尾不添加任何填充字符。

此編碼器實(shí)例的編碼方案不受此調(diào)用的影響。 返回的編碼器實(shí)例應(yīng)用于非填充編碼操作。

返回:

一個(gè)等效的編碼器,在末尾不添加任何填充字符進(jìn)行編碼

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)