熟悉系统编程,了解read open write fread fopen fwrite
open打开文件O_CREAT若欲打开的文件不存在则自动建立该文件,O_RDONLY以只读方式打开文件
最后加入权限 00700 等
read
相关函数:write、close、lseek等等。
定义函数:ssze_t read(int fd,void *buf,size_t count);
read()会把参数fd所指的文件传送count个字节到buf指针所指的内存中。返回值为实际读取到的字节数。
write
相关函数:close、lsseek、等等
定义函数:ssze_t write(int fd,const void *buf,size_t count);
write()会把参数buf所指的内存写入count个字节到参数fd所指的文件内。当然,文件读写位置也会随之移动。返回值为实际写入的字节数。
lseek
相关函数:open、fseek
定义函数:off_t lseek(int filed,off_t offset,int whence);
说明:lseek是移动文件指针,它有三种方式,第一,相对文件开头移动多少字节;第二,相对当前位置向前或向后移动多少字节;第三,相对文件末尾向前移动多少字节。当调用成功时则返回目前的读写位置,也就是距离文件开头多少个字节;若有错误则返回-1,errno会存放错误代码。
close
相关函数:open、read、write
定义函数:int close(int fd);
说明:用来关闭open()打开的文件。
返回值:若关文件成功则返回0,有错误发生时则返回EOF并把错误代码存到errno。
带缓冲的I/O操作
三种类型:1、全缓冲 2、行缓冲 3、不带缓冲
fopen函数用于打开文件
定义函数:FILE *fopen(const char *path,const char *mode);
文件打开顺利,指向该流测文件指针就会被返回。
fclose用于关闭文件
定义函数:int fclose(FILE *stream);
若关文件成功返回0。
fread函数用于从文件流读取数据
定义函数:size_t fread(void * ptr,size_t size,size_t nmemb,FILE *stream);
返回实际读取的nmemb数目。
fwrite函数用于将数据写至文件流
定义函数:size_t fwrite(const void *ptr,size_t,size,size_t nmemb,FILE *stream);
返回实际写入的nmemb数目
fseek函数用于移动文件流的读写位置
定义函数:int fseek(FILE *stream,long offset,int whence);
当调用成功时返回0;若有错误则返回-1,errno会存放错误代码。