zoukankan      html  css  js  c++  java
  • c语言文件I/O 文件读取和写入

    C语言文件相关函数主要有以下几种:

    1. FILE* fopen(char* filepath, char* mode);
      打开文件函数,传入文件地址和打开模式
      文件打开模式包括
                       "r"  读取
                      ,"w" 写入模式,将现有文件清空。如果不存在则创建文件
                      ,"a" 附加模式,在文件末尾追加数据,不存在则创建文件
                      ,"r+"更新模式,可读可写
                      ,"w+"更新模式,可读可写,文件清空,不存在则创建文件
                      ,"a+"更新模式,可读可写,末尾追加,不存在则创建文件,可以读取全部数据,但只能在末尾追加
      返回文件指针
       
    2. char  getc(FILE* fp);
      从fp所指文件中读取一个字符,并返回。
      与char getchar()的区别就是,此函数需要指定字符获取源,而getchar()默认从stdin获取输入。
      也就是说 char getchar() 等价于 char getc(stdin) 。
       
    3. putc(char ch, FILE* fp);
      将字符ch放入fp所指文件。
      与putchar(char ch)的区别就是,此函数需要指定字符目的文件,而putchar()默认将字符放入stdout。
      也就是说 putchar(char ch) 等价于 putc(ch,stdout);
       
    4. int fclose(FILE* fp);
      关闭fp指定的文件,必要时刷新缓冲区。
      成功返回0,失败返回EOF。当硬盘存储满的时候失败。
    5. 标准文件指针
      stdin,   指向键盘
      stdout, 指向屏幕
      stderr,  指向屏幕
       
    6. fscanf(FILE* fp, const char* format, char* buf);
      从fp所指文件中按照format格式将数据读取到buf中。
      与scanf(const char* format, char* buf);区别就是,fscanf(FILE* fp, const char* format, char* buf)可以指
      定从哪里读取数据。而scanf(const char* format, char* buf);默认从stdin读取数据。
      也就是说scanf(const char* format, char* buf);等价与 fscanf(stdin, const char* format, char* buf);
       
    7. fprintf(FILE* fp, char* buf);
      将buf中的数据写入fp所指文件。
      与printf(char* buf);区别就是,fprintf(FILE* fp, char* buf);可以指定将buf写入哪里,而printf(char* buf);
      默认写入stdout。
      也就是说fprintf(stdout, char* buf); 等价于 printf(char* buf);
       
    8. fgets(char* buf, int stlen, FILE* fp);
      从fp所指文件读取一行或者读取到文件结尾或者读取strlen-1个字符放入buf中。
      当读取到EOF时返回NULL。
       
    9. fputs(char* buf, FILE* fp);
      将buf写入fp所指文件。因为fgets(char* buf, int stlen, FILE* fp);在读取行的时候返回' ',因此,此函数不会
      添加回车。
       
    10. fseek(FILE* fp, long offset, seek_mod);
      将fp所指文件指针调整到seek_mod规定的位置,并按照offset调整指针。
      seek_mod:
              SEEK_SET,文件开始
              SEEK_CUR,当前指针
              SEEK_END 文件结束
      offset:可正可负
       
    11. ftell(FILE* fp);
      返回fp所指文件指针当前位置

     源码示例:https://github.com/WeiAt931/C.git

  • 相关阅读:
    Collections集合工具类排序
    集合的学习
    gitee使用方法
    vue 首屏优化
    vue 配置多个路由别名
    vue中的状态管理Vuex
    【Python】Pandas合并表格之(append, join , concat方法)
    elementui中提交表单自动刷新页面的问题
    滴滴实习面试题
    CSS 日常积累
  • 原文地址:https://www.cnblogs.com/PPWEI/p/9903791.html
Copyright © 2011-2022 走看看