函数

GLibbase64_decode_step

从 2.12 起

声明 [src]

gsize
g_base64_decode_step (
  const gchar* in,
  gsize len,
  guchar* out,
  gint* state,
  guint* save
)

说明 [src]

从其 Base-64 字符串化表示中逐步解码一段二进制数据。通过多次调用此函数,您可以分块转换数据,从而避免必须在内存中有完整的编码数据。

输出缓冲区必须足够大,以容纳将写入其中的所有数据。由于 base64 将 3 个字节编码为 4 个字符,因此您至少需要:(len / 4) * 3 + 3 个字节(在非零状态的情况下可能需要 + 3)。

自 2.12 起提供

语言绑定无法直接使用此函数。

参数

in

类型:数组 guint8

二进制输入数据。

数组长度在 len 参数中指定。
数据归函数调用者所有。
len

类型: gsize

要解码的 in 数据的最大长度。

out

类型:数组 guint8

输出缓冲区。

该参数将由函数设置。
返回的数据归函数所有。
state

类型: gint*

步骤之间的已保存状态,初始化为 0。

该参数将由函数修改。
save

类型: guint*

步骤之间的已保存状态,初始化为 0。

该参数将由函数修改。

返回值

类型: gsize

已写入的输出字节数。