42节讲数据保存到文本!

来源:互联网 发布:校园ip网络广播系统 编辑:程序博客网 时间:2024/04/29 11:44

一.文件的操作步骤

1.定义文件指针变量

2.打开文件

3.对文件进行读或写

4.关闭文件

例:

#include <stdio.h>#include <stdlib.h>int main(){    FILE *fp;//定义文件指针变量fp    int i,d;    fp=fopen("data.txt","w");//打开文件的操作,这里引号内是文件名,后面w是表示我们要进行写的操作,返回的值赋给fp    if(fp==NULL)//判断是否成功打开文件,没成功则返回NULL,执行if内的操作    {        printf("File cannot open!");        exit(0);//退出程序执行    }    for(i=0;i<10;i++)    {        scanf("%d",&d);        fprintf(fp,"%d\t",d);//fprintf表示文件输出格式为fprintf(文件指针,"输出格式字符串",输出表列)    }    fclose(fp);//最后我们关闭文件    return 0;}

概述:

一、打开文件

作用:将文件信息从磁盘装入计算机内存,建立与文件有关的信息,建立文件指针与文件名之间的关联

形式:文件指针变量名=fopen(文件名,使用方式)

例:fp=fopen("date.txt","w")

例2:

FILE *fpfp=fopen("c:\\date.txt","w")//这里有俩个斜杠,因为c语言里斜杠作为转义字符,如果我们要输出,用双斜杠输出一个斜杠if(fp==NULL){printf("File cannot open!");exit(0);}  
使用文件的方式说明:

“r”表示只读,为输入打开一个文本文件

“w”表示只写,为输出打开一个文本文件

“a”表示追加,向文本尾部追加输入数据

暂时我们只介绍文本文件的顺序读写


文件打开的结果:

1.成功:返回值为file类型的指针

2.失败:返回NULL

所以我们可以用来判断文件是否成功打开

二、

使用写文件方式之一-----格式化输出

分析代码:

#include <stdio.h>#include <stdlib.h>int main(){    FILE *fp;    int i,No;    float salary;    fp=fopen("data.csv","w");    if(fp==NULL)    {        printf("File cannot open!");        exit(0);    }    //输入5名员工的工号和工资,并保存到文件中    for(i=1;i<=5;i++)    {        scanf("%d %f",&No,&salary);        fprintf(fp,"%d,%.2f\n",No,salary);//在文本中输入    }    fclose(fp);    return 0;}
实用读文件方式之一-----格式化输入

代码分析:

#include <stdio.h>#include <stdlib.h>int main(){    FILE *fp;    int i,No;    float salary;    fp=fopen("data.csv","r");    if(fp==NULL)    {        printf("File cannot open!");        exit(0);    }    //输入5名员工的工号和工资,并保存到文件中    for(i=1;i<=5;i++)    {        fscanf(fp,"%d,%f",&No,&salary);        printf("%d\t%.2f\n",No,salary);    }    fclose(fp);    return 0;}
实用写文件方式之一-------将字符写入文件

1.函数原型: int fputc(int ch,FILE *fp)

2.功能:把字符ch写到fp指向的磁盘文件中去

3.函数返回值:

成功:返回值就是输入的字符

失败:返回一个EOF(-1)

代码分析:

#include <stdio.h>#include <stdlib.h>int main(){    FILE *fp;    char c;    fp=fopen("data.txt","w");    if(fp==NULL)    {        printf("File cannot open!");        exit(0);    }    while((c=getchar())!=EOF)        fputc(c,fp);    fclose(fp);    return 0;}
实用读文件方式之一------从文件中读取字符

1.函数原型:int fgetc(FILE *fp)

2.函数功能:

从文件指针fp指向的文件当前位置(位置指针)读出一个字符,然后文件位置指针自动后移,指向文件中的下一个字符,返回值为读入的字符

若遇到文件结束符,则返回结束符EOF(-1)

代码分析:

#include <stdio.h>#include <stdlib.h>int main(){    FILE *fp;    char c;    fp=fopen("data.txt","r");    if(fp==NULL)    {        printf("File cannot open!");        exit(0);    }    while((c=fgetc(fp))!=EOF)        putchar(c);    fclose(fp);    return 0;}
这节课先到此为止


0 0