zoukankan      html  css  js  c++  java
  • C语言下的文件操作语句

    C语言下的文件操作函数(打开,关闭,读写,文件的定位,文件出错的检测)

       

    函数名: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全局变量里。


    函数名: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


    函数名:fwrite

    原型:size_t fwrite(const char *ptr, size_t size, size_t count, FILE *fp)

    功能:向文件中写入字节流,并将文件中的写位置移动到最后一次被写入的字节流后面

    参数:
    ptr   要被写入的字节流所在缓冲区地址
    size  一次写入的字节流大小
    count 写入次数
    fp    所操作的文件指针

    返回值:
    字节流被成功写入次数

  • 相关阅读:
    流水线电子看板的设计与实现
    ASP.NET MVC 5 Web编程4 -- Razor视图引擎
    实战:上亿数据如何秒查
    ASP.NET MVC 5 Web编程3 -- Controller的应用及扩展
    ASP.NET MVC 5 Web编程2 -- URL映射(路由原理)
    ASP.NET MVC 5 Web编程1 -- 入门
    IIS发布站点错误收集(持续更新)
    .NET垃圾回收(GC)原理
    SSRS(rdl报表)分页显示表头和对表头的冻结处理
    《CLR.via.C#第三版》第二部分第13章节 接口 读书笔记(七)
  • 原文地址:https://www.cnblogs.com/hao02171990/p/3006341.html
Copyright © 2011-2022 走看看