A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© vyqrvwgf 中级黑马   /  2015-11-3 12:42  /  966 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1.文件操作的步骤
        1)导入头文件stdio.h
        2)定义文件指针
        3)打开文件
        4)读写文件
        5)关闭文件

2.文件操作函数
        1)字符读写函数 fgetc,fputc
        2)字符串读写函数 fgets,fputs
        3)数据块读写函数 fread,fwrite
        4)格式化读写函数 fscanf,fprintf

3.文件的打开(fopen)关闭(fclose)
        FILE *fp=NULL
        p=fopen(文件名,使用文件的方式)
        1)文件指针名必须是被说明为FILE类型的指针变量
        2)文件名是被打开文件的文件名
        3)使用文件方式是指文件的类型和操作要求
        4)文件名是字符串常量式字符串数组
#include <stdio.h>
//a.txt储存在product目录下
  1. int main(){
  2.         FILE *fp=NULL;
  3.         fp=fopen("a.txt","r");
  4.         if(fp!=NULL){
  5.                 printf("file");
  6.         }else{
  7.                 printf("文件打开失败!按任意键推出!");
  8.                 gechar();
  9.                 exit(1);
  10.         }
  11.         return 0;
  12. }
复制代码

4.文件操作方式
        1)r
        只读文件,不能向文件写入数据。
        2)w
        创建一个新文件,准备向文件写入数据,不能从文件中读取数据,如果文件已存在,这个文件将被覆盖(先删后建)
        3)a
        打开一个已存在的文件,准备在文件尾部追加数据,不能从文件中读取数据,如果文件不存在,则创建这个文件。
        4)r+
        打开一个已存在的文件,准备读写
        5)w+
        创建一个新文件,准备读写,覆盖
        6)a+
        打开一个已存在的文件,准备在文件尾部追加数据,可以读写。
        7)t
        打开一个文本文件(ascii码文件)
        8)b
        打开一个二进制文件
        默认打开方式是rt

5.fgetc和fputc
        1)fputc(字符,文件指针);
       
  1. #include <stdio.h>
  2. int main(){
  3.         FILE *fp = NULL;
  4.         fp=fopen("fputc.txt","w");
  5.         if(fp!=NULL){
  6.                 char ch = 'x'
  7.                 fputc(ch,fp);
  8.                 printf("写入成功");
  9.         }else{
  10.                 printf("打开文件失败,按任意键推出!");
  11.                 getchar();
  12.                 exit(1);
  13.         }
  14.         fclose(fp);
  15.         return 0;
  16. }
复制代码


        2)fgetc()
        FILE *fp=fopen("fputc.txt","r");
        ch=fgetc(fp);
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. int main(){
  4.         char ch[]="i love china";
  5.         FILE *fp=fopen("ch.txt","w");
  6.         if(fp!=NULL){
  7.                 for(int i=0;i<strlen(ch);i++){
  8.                         fputc(ch[i],fp);
  9.                 }
  10.         }else{
  11.                 printf("打开文件失败,请按任意键退出!");
  12.                 getchar();
  13.                 exit(1);
  14.         }
  15.         fclose(fp);
  16.         return 0;
  17. }
复制代码


  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. int main(){
  4.         FILE *fp=fopen("ch.txt","r");
  5.         char s=fgetc(fp);
  6.         while(s!=EOF){
  7.                 putchar(s);
  8.                 s=fget(fp);
  9.         }
  10.         fclose(fp);
  11.         return 0;
  12. }       
复制代码



6.字符串读取函数fgets(),fputs()
        fputs()读取时,遇到\n和EOF结束读取
        fputs 的返回值为输入字符的个数

7.数据块读写函数fread()和fwrite()
        freard(buffer,size,count,fp);
        fwrite(buffer,size,count,fp);
        1)buffer
        指针,存放数据的地址,输出数据的地址
        2)size
        块的大小
        3)count
        读取几块
        4)fp
        文件指针

1 个回复

倒序浏览
学习了,不错不错
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马