GioConverterInputStream

描述 [源]

class Gio.ConverterInputStream : Gio.FilterInputStream
  implements Gio.PollableInputStream {
  /* No available fields */
}

Converter输入流实现了GInputStream,允许在读取时转换各种类型的数据。

截至 GLib 2.34,GConverterInputStream 实现了GPollableInputStream

构造函数

g_converter_input_stream_new

base_stream 创建一个新的转换输入流。

实例方法

g_converter_input_stream_get_converter

获取 converter_stream 所使用的 GConverter

自 2.24 起有效

GFilterInputStream 继承的方法(3个)
g_filter_input_stream_get_base_stream

获取过滤流的基流。

g_filter_input_stream_get_close_base_stream

返回当 stream 被关闭时,基流是否会被关闭。

g_filter_input_stream_set_close_base_stream

设置当 stream 被关闭时,基流是否会被关闭。

GInputStream 继承的方法(19个)
g_input_stream_clear_pending

清除 stream 上的挂起标志。

g_input_stream_close

关闭流,释放与其相关的资源。

g_input_stream_close_async

请求异步关闭流,释放与其相关的资源。操作完成时,将调用 callback。之后您可以调用 g_input_stream_close_finish() 以获取操作的结果。

g_input_stream_close_finish

完成从 g_input_stream_close_async() 开始的异步流关闭操作。

g_input_stream_has_pending

检查输入流是否有待执行的操作。

g_input_stream_is_closed

检查输入流是否已被关闭。

g_input_stream_read

尝试从流中读取 count 个字节到起始于 buffer 的缓冲区。此处读取将阻塞。

g_input_stream_read_all

尝试从流中读取 count 个字节到起始于 buffer 的缓冲区。此处读取将阻塞。

g_input_stream_read_all_async

请求异步从流中读取 count 个字节到起始于 buffer 的缓冲区。

自 2.44 起有效

g_input_stream_read_all_finish

完成使用 g_input_stream_read_all_async() 开始的异步流读取操作。

自 2.44 起有效

g_input_stream_read_async

请求异步从流中读取 count 个字节到起始于 buffer 的缓冲区。操作完成时,将调用 callback。之后您可以调用 g_input_stream_read_finish() 以获取操作的结果。

g_input_stream_read_bytes

类似于 g_input_stream_read(),尝试从流中按阻塞方式读取 count 字节。然而,它不会将数据读取到用户提供的缓冲区中,而是创建一个新的 GBytes,其中包含读取的数据。这可能对语言绑定更容易使用。

自:2.34

g_input_stream_read_bytes_async

请求从流中异步读取 count 字节到一个新的 GBytes。当操作完成时,将调用 callback。然后您可以调用 g_input_stream_read_bytes_finish() 来获取操作结果。

自:2.34

g_input_stream_read_bytes_finish

完成异步流读取到 GBytes 的操作。

自:2.34

g_input_stream_read_finish

完成异步流读取操作。

g_input_stream_set_pending

stream 设置为待处理状态。如果待处理标志已设置或 stream 已关闭,则返回 FALSE 并设置 error

g_input_stream_skip

尝试从流中跳过 count 字节。在操作期间将阻塞。

g_input_stream_skip_async

请求从流中异步跳过 count 字节。当操作完成时,将调用 callback。然后您可以调用 g_input_stream_skip_finish() 来获取操作结果。

g_input_stream_skip_finish

完成流跳过操作。

GObject 继承的方法(43)

请参阅 GObject 获取方法列表的完整列表。

GPollableInputStream 继承的方法(4)
g_pollable_input_stream_can_poll

检查 stream 是否实际上可轮询。某些类可能实现 GPollableInputStream,但只有该类的某些实例可轮询。如果此方法返回 FALSE,则其他 GPollableInputStream 方法的行为将是未定义的。

自:2.28

g_pollable_input_stream_create_source

创建一个在 stream 可读、cancellable 触发或发生错误时触发的 GSource。源上的回调和 GPollableSourceFunc 类型。

自:2.28

g_pollable_input_stream_is_readable

检查 stream 是否可读。

自:2.28

g_pollable_input_stream_read_nonblocking

尝试以与 g_input_stream_read() 相同的方式从 stream 中读取最多 count 字节到 buffer。如果 stream 当前不可读,则立即返回 G_IO_ERROR_WOULD_BLOCK,您可以使用 g_pollable_input_stream_create_source() 创建将 stream 可读时触发的 GSource

属性

GFilterInputStream 继承的属性(2)
Gio.FilterInputStream:base-stream

要执行 I/O 操作的底层基础流。

Gio.FilterInputStream:close-base-stream

当过滤流关闭时,是否应关闭基础流。

信号

GObject 继承的信号(1)
GObject::notify

当通过 g_object_set_property()、g_object_set() 等等方式设置对象的某个属性值时,会发出 notify 信号。

类结构

struct GioConverterInputStreamClass {
  GFilterInputStreamClass parent_class;
  void (* _g_reserved1) (
void
  );
  void (* _g_reserved2) (
void
  );
  void (* _g_reserved3) (
void
  );
  void (* _g_reserved4) (
void
  );
  void (* _g_reserved5) (
void
  );
  
}

没有可用的描述。

类成员
parent_class: GFilterInputStreamClass

没有可用的描述。

_g_reserved1: void (* _g_reserved1) ( void )

没有可用的描述。

_g_reserved2: void (* _g_reserved2) ( void )

没有可用的描述。

_g_reserved3: void (* _g_reserved3) ( void )

没有可用的描述。

_g_reserved4: void (* _g_reserved4) ( void )

没有可用的描述。

_g_reserved5: void (* _g_reserved5) ( void )

没有可用的描述。