C语言统一文件系统接口 GnomeVFS

未知
C/C++
跨平台
2009-06-16
红薯

GnomeVFS 是一个 C 语言的库,提供了统一的接口用来访问各种不同的文件系统,支持包括:WebDAV, ftp, 本地文件系统, gzip, bzip2, cdda 等多种文件系统。

示例代码:

static GnomeVFSResult
do_read (GnomeVFSMethod *method,
GnomeVFSMethodHandle *method_handle,
gpointer buffer,
GnomeVFSFileSize bytes,
GnomeVFSFileSize *bytes_read,
GnomeVFSContext *context)
{
FileHandle *handle = (FileHandle *) method_handle;
if (!handle->str) {
/* This is the first pass, get the content string. */
handle->str = g_strdup (handle->fnode->content);
handle->size = handle->fnode->size;
handle->bytes_written = 0;
}
if (handle->bytes_written >= handle->len) {
/* The whole file is read, return EOF. */
*bytes_read = 0;
return GNOME_VFS_ERROR_EOF;
}
*bytes_read = MIN (bytes, handle->size - handle->bytes_written);
memcpy (buffer, handle->str + handle->bytes_written, *bytes_read);
handle->bytes_written += *bytes_read;
return GNOME_VFS_OK;
}
加载中

评论(0)

暂无评论

暂无资讯

暂无问答

ubuntu另一個發行套件UbuntuStudio-數位影像媒体工作室

Ubuntu除Ubuntu基礎項目,還包括Kubuntu、Xubuntu和edubuntu。除此之外,Ubuntu社區自發開發了一個以针对GNU / Linux的音频,视频和图形专业及爱好者提供一個数字媒體工作室的套件,稱之為“...

2010/09/02 14:01
1K
0
Qt5使用GStreamer1.0

同样是Ubuntu 16.04系统,在其中一台机器上,./configure 检测 Qt Multimedia: ALSA ................................... yes GStreamer 1.0 .......................... no 无法启用QtMut...

2016/12/28 22:58
845
1

没有更多内容

加载失败,请刷新页面

没有更多内容

返回顶部
顶部