C语言基础:文件的操作

示例代码:

文件的打开关闭:

  1. void main(){              //main()函数
  2.     FILE *fp;               //定义一个文件指针*fp
  3.     if((fp=fopen("D:\\yys.txt","rb"))==NULL){                //fopen()打开指定路径的文件
  4.         printf("file can not open!\n");
  5.         getch();
  6.         exit(1);                                                               //关闭所有文件,终止程序运行
  7.     }else{
  8.         printf("succeed open!\n");                            //提示打开成功
  9.     }
  10.     fclose(fp);                                                          //fclose()关闭文件
  11. }

--------------------------------------------------------------------------------------------------------------------------

文件的读写操作     

      fgetc()读字符函数

  1. void main(){
  2.     FILE *fp;                         //文件指针*fp
  3.     if((fp=fopen("D:\\yys.txt","rb"))==NULL){                //打开指定路径的文件
  4.         printf("file can not open!\n");
  5.         getch();
  6.         exit(1);                      //终止程序运行
  7.     }else{
  8.         printf("succeed open!\n");                              //提示打开成功
  9.     }
  10.     char c; 
  11.     c=fgetc(fp);                  //读取字符
  12.     while(c!=EOF){        //EOF文件结束标志
  13.         putchar(c);            //打印到控制台
  14.         c=fgetc(fp);
  15.     }
  16.     fclose(fp);                //关闭文件
  17. }

    --------------------------------------------------------------------------------------------------------

    fputc()写字符函数

  1. main(){
  2.     FILE *fp;                 //文件指针
  3.     char c;
  4.     
  5.     if((fp=fopen("D:\\14.txt","a+"))==NULL){                 //打开指定路径的文件 a 追加数据+ 可读可写
  6.         printf("file can not open!\n");
  7.         getchar();
  8.         exit(1);
  9.     }
  10.     printf("Please input a string:\n");
  11.     c=getchar();                          //输入字符
  12.     while(c!='\n'){                       
  13.         fputc(c,fp);                     //写入文件
  14.         c=getchar();
  15.     }
  16.     rewind(fp);                 //把文件指针移到文件开始位置
  17.     
  18.     c=fgetc(fp);               //读取字符
  19.     while(c!=EOF){
  20.         putchar(c);            //打印到控制台
  21.         c=fgetc(fp);
  22.     }
  23.     printf("\n");
  24.         
  25.     fclose(fp);             //关闭文件
  26. }

-------------------------------------------------------------------------------------------

fwrite()写数据函数

  1. main(){  
  2.     FILE *fp;                //文件指针
  3.     char a[8];
  4.     char *p=a;             //数组指针 
  5.     if((fp=fopen("d:\\14.txt","wb"))==NULL){           //打开指定路径文件,w写入,b二进制
  6.         printf("Can not open file!\n");
  7.         exit(0);
  8.     }
  9.     
  10.     puts("Please input 8 characters:");
  11.     while(p<a+8){                                //输入8个字符
  12.         scanf("%c",p++);
  13.     }
  14.     fwrite(a,sizeof(char),8,fp);           //将数组中的数据写入到指定文件
  15.     fclose(fp);                                     //关闭文件
  16. }

-------------------------------------------------------------------------------------------------------

fread()读数据函数

  1. main(){
  2.     FILE *fp;                   //文件指针
  3.     char a[10];
  4.     int i;
  5.     fp=fopen("d:\\14.txt","rb");        //打开指定路径文件
  6.     
  7.     if(fread(a,1,10,fp)!=10){              //读取10个字符数据到数组a
  8.         if(feof(fp)) printf("End of file:\n");  //没有读完10个字符,文件结束
  9.         else printf("Read error:\n");
  10.     }
  11.     fclose(fp);                                //关闭文件
  12.     
  13.     for(i=0;i<10;i++)          
  14.         printf("%c",a[i]);           //输出数组中的字符数据
  15.     printf("\n");
  16. }

------------------------------------------------------------------------------------------------------------------

fputs()写字符串函数               fgets()读字符串函数

  1. main(){
  2.     
  3.     FILE *fp;   //文件指针
  4.     char a[9];
  5.     int i;
  6.     fp=fopen("d:\\14.txt","rt");         //打开指定路径文件,可读可写
  7.    
  8.    fputs("hello world",fp);         //写入字符串“hello world”到文件
  9.  
  10.     if(fp==NULL){               
  11.         printf("Can not open:\n");
  12.         getch();
  13.         exit(1);
  14.     }
  15.     
  16.     fgets(a,9,fp);                     //从fp所指文件读取9个数据到数组
  17.     printf("%s\n",a);                //输出数组文件内容字符串
  18.     fclose(fp);                         //关闭文件               
  19.      
  20.     for(i=0;i<9;i++)           
  21.         printf("%c",a[i]);         //依次输出各个字符
  22.     printf("\n");  
  23. }

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值