夫为剑者

示之以虚 开之以利 后之以发 先之以至

常用链接

统计

积分与排名

最新评论

linux上的c编程笔记-------文件系统的操作

打开文件以前检验进程是否已经访问过该文件:
#include <unistd.h>
int access(char *pathname,int mode);
正确返回:1
错误返回:0
pathname:希望检验的文件名
        mode:包含在unistd.h中的以下值之一
                      R_OK   --------   进程是否有过读文件
                      W_OK   -------   进程是否有过写文件
                      X_OK   --------   进程是否有过执行文件
                      F_OK    --------   检验规定的文件是否存在

创建新文件
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
int creat(const char* pathname,mode_t mode);
等价于:
open(pathname,O_WRONLY | O_CREAT | O_TRUNC,mode);

读文件
#include <unistd.h>
ssize_t read(int fd,void *buf,size_t nbytes);
正确返回:0或者字节数
错误返回:-1
         fd: 文件描述符
      buf:指向内存块的指针
nbytes:复制到buf中字节个数的计数

写文件
#include <unistd.h>
ssize_t write(int fd,void *buf,size_t nbytes);

关闭文件
#include <unistd.h>
int close(int fd);
正确返回:0
错误返回:-1

随机文件操作
#include <sys/types.h>
#include <unistd.h>
off_t lseek(int fd,off_t offset,int whence);
          fd:文件描述符
   offset:偏移值
whence:下面三个之一
                  SEEK_SET       从文件开始处计算
                  SEEK_CUR      当前位置计算
                  SEEK_END      文件结束处计算
在<sys/types.h>中有定义off_t类型为:typedef   long   off_t;

posted on 2005-12-08 13:31 vivip 阅读(123) 评论(0)  编辑 收藏 引用 所属分类: 学习笔记


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理