方法

GioSeekableseek

声明 [src]

gboolean
g_seekable_seek (
  GSeekable* seekable,
  goffset offset,
  GSeekType type,
  GCancellable* cancellable,
  GError** error
)

描述 [src]

通过指定的 offsettype 在流中定位。

如果尝试在流末尾之后定位,则结果将根据流是否为固定大小或可调整大小而有所不同。如果流是可调整大小的,那么在末尾之后定位然后写入将在空空间填充零。在可调整大小的流的末尾定位然后读取将导致 EOF。在固定大小的流的末尾定位将失败。

任何会导致负偏移的操作将失败。

如果 cancellable 不是 NULL,则可以从另一个线程触发可取消对象以取消操作。如果操作被取消,则将返回错误 G_IO_ERROR_CANCELLED

参数

offset

类型: goffset

A goffset

type

类型: GSeekType

A GSeekType

cancellable

类型: GCancellable

可选的 GCancellable 对象,NULL 表示忽略。

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

类型: GError **

恢复错误的位置返回值。

该参数可以是 NULL
如果返回位置不是 NULL,则必须将其初始化为 NULL GError*
如果没有错误,方法将保留地初始化该参数到 NULL
在出现错误的情况下,该参数将设置为新分配的 GError;调用者将占用数据,并对释放它负责。

返回值

类型: gboolean

TRUE 表示成功。如果发生错误,此函数将返回 FALSE 并根据是否存在设置 error