方法

GioOutputStreamwrite_bytes

声明 [src]

gssize
g_output_stream_write_bytes (
  GOutputStream* stream,
  GBytes* bytes,
  GCancellable* cancellable,
  GError** error
)

描述 [src]

是g_output_stream_write()的包装函数,它接受一个GBytes作为输入。这可能在语言绑定或其他需要GBytes引用计数的自然属性而不是裸指针接口的情况下更方便。

但是,请注意,这个函数可能会像g_output_stream_write()一样执行部分写入。如果发生这种情况,要继续写入,您需要创建一个新的GBytes,其中仅包含剩余的字节,使用g_bytes_new_from_bytes()。多次传递相同的GBytes实例可能会导致输出流中重复数据。

参数

bytes

类型: GBytes

要写入的GBytes

数据由方法调用者所有。
cancellable

类型: GCancellable

可选的可取消对象。

该参数可以是NULL
数据由方法调用者所有。
error

类型: GError **

可恢复错误的返回位置。

该参数可以是NULL
如果返回位置不是NULL,则必须将其初始化为NULL GError*
如果没有错误,该方法会将此参数留空初始化为NULL
如果发生错误,参数将设置为一个新的 GError 分配;调用者将负责数据的管理,包括释放内存。

返回值

类型: gssize

写入的字节数,或者出错时返回 -1。