文件操作函数
时间:2010-07-17 来源:wt_tokey
函数名:fopen
原型:FILE *fopen(const char *path, const char *mode)
功能:打开文件流
参数:
path 要打开的文件
mode 打开模式,取值如下。
r 以只读方式打开文件。如果打开成功,则返回的文件指针指向文件流的开头。
r+ 以读写方式打开文件。如果打开成功,则返回的文件指针指向文件流的开头。
w 以只写方式打开文件。如果文件存在,则打开文件的同时,清空原文件内容;如果文件不存在,则建立该文件。返回的文件指针都指向文件流的开头。
w+ 以读写方式打开文件。如果文件存在,则打开文件的同时,清空原文件内容;如果文件不存在,则建立该文件。返回的文件指针都指向文件流的开头。
a 以追加的方式打开文件。如果文件不存在,则建立该文件。如果文件存在,则原文件内容不受破坏。返回的文件指针都指向文件流的开头,但当进行第一次写操作 时,指针会首先自动移动到文件流结尾。
a+ 以读追加的方式打开文件。如果文件不存在,则建立该文件。如果文件存在,则原文件内容不受破坏。返回的文件指针都指向文件流的开头,但当进行第一次写操作 时,指针会首先自动移动到文件流结尾。
返回值:
成功:文件指针。
失败:NULL。失败原因被写在errno全局变量里。
函数名:fclose 原型:int *fclose(FILE *fp) 功能:将缓冲区中的数据写入文件,然后关闭文件。 参数: fp 该函数操作的文件的指针 返回值: 成功:0。 失败:EOF。失败原因被写在errno全局变量里。
函数名:fclose 原型:int *fclose(FILE *fp) 功能:将缓冲区中的数据写入文件,然后关闭文件。 参数: fp 该函数操作的文件的指针 返回值: 成功:0。 失败:EOF。失败原因被写在errno全局变量里。
函数名:fseek
原型:int fseek(FILE *fp, long offset, int whence)
功能:移动文件读写位置
参数:
fp 所操作的文件指针
offset 相对于whence的偏移量,单位为字节。
whence 移动起点。取值范围是SEEK_SET(0,文件开头),SEEK_CUR(1,当前位置),SEEK_END(2,文件末尾)
返回值:
成功:0。
失败:-1。失败原因被写在errno全局变量里。
函数名:ftell
原型:long ftell(FILE *fp)
功能:得到文件的读写位置。
参数:
fp:所操作文件
返回值:
成功:读写位置,相对于文件开头的偏移字节量
失败:-1。失败原因被写在errno全局变量里。
函数名:rewind
原型:void rewind(FILE *fp)
功能:将读写位置定位到文件开头。该函数相当于
(void)fseek(fp, 0L, SEEK_SET)
参数:
fp 所操作文件的指针
返回值:无
函数名:fgetpos
原型:int fgetpos(FILE *fp, fpos_t *pos)
功能:取得读写位置。与ftell功能类似。
参数:
fp 所操作文件的指针
pos 取得的读写位置将存在这里,其值是相对于文件开头的偏移字节量。
返回值:
成功:0。
失败:-1。失败原因被写在errno全局变量里
函数名:fsetpos
原型:int fsetpos(FILE *fp, fpos_t *pos)
功能:移动读写位置。与fseek功能类似。
参数:
fp 所操作文件的指针
pos 目标位置。该值是相对于文件开头的字节偏移量。
返回值:
成功:0
失败:-1。失败原因被写在errno全局变量里。
函数名:fgets
原型:char *fgets(char *str, int size, FILE *fp)
功能:从文件中连续读取多个字符。结束读取的条件有三:
1 遇到换行符,且换行符作为最后一个被读取的字符
2 遇到文件结束符,且文件结束符作为最后一个被读取得字符
3 已经读取了(size - 1)个字符
结束时在被读进str中的最后一个字符后加字符串结束符,文件内的读取位置自动移动到下一个字符处
参数:
str 从文件中读出的字符存到这里
size 要读取的字符串长度为(size - 1)
fp 所操作的文件指针
返回值: 成功:str的值 失败:NULL
函数名:fputs
原型:int fputs(const char *str, FILE *fp) 功能:向文件中写入字符串,但字符串末尾的字符串结束符被忽略。并将文件内的写位置移动到刚刚被写入字符的下一个位置。 参数: str 要写入文件的字符串 fp 所操作的文件指针 返回值: 成功:非负数 失败:EOF
函数名:fread 原型:size_t fread(void *ptr, size_t size, size_t count, FILE *fp) 功能:从文件中读取字节流,存到ptr指示的缓冲区中,并将文件中的读取位置移动到最后一次被读取的字节流的后面。 参数: ptr 被读出的字节存到它所指向的缓冲区中 size 一次读取的字节流大小 count 读取次数 fp 所操作的文件指针 返回值: 字节流被成功读取的次数,不大于count
返回值: 成功:str的值 失败:NULL
函数名:fputs
原型:int fputs(const char *str, FILE *fp) 功能:向文件中写入字符串,但字符串末尾的字符串结束符被忽略。并将文件内的写位置移动到刚刚被写入字符的下一个位置。 参数: str 要写入文件的字符串 fp 所操作的文件指针 返回值: 成功:非负数 失败:EOF
函数名:fread 原型:size_t fread(void *ptr, size_t size, size_t count, FILE *fp) 功能:从文件中读取字节流,存到ptr指示的缓冲区中,并将文件中的读取位置移动到最后一次被读取的字节流的后面。 参数: ptr 被读出的字节存到它所指向的缓冲区中 size 一次读取的字节流大小 count 读取次数 fp 所操作的文件指针 返回值: 字节流被成功读取的次数,不大于count
函数名:fwrite
原型:size_t fwrite(const char *ptr, size_t size, size_t count, FILE *fp)
功能:向文件中写入字节流,并将文件中的写位置移动到最后一次被写入的字节流后面
参数:
ptr 要被写入的字节流所在缓冲区地址
size 一次写入的字节流大小
count 写入次数
fp 所操作的文件指针
返回值:
字节流被成功写入次数
相关阅读 更多 +