c语言文件格式化用户从磁盘,C语言:将数据保存到文本文件

任务代码:

文件操作步骤:

#include

#include

int main()

{

FILE *fp;//文件指针

int i, d;

/*文件的打开*/

fp=fopen("data.txt","w");//fopen打开文件,这个文件可以是当前不存在的。“w”以写入的形式打开,“r”以读的形式打开

if(fp==NULL) //判断如果文件指针为空

{

printf("File cannot open! " );

exit(0);//在以0的形式退出,必须在文件开头有#include ,stdlib 头文件即standard library标准库头文件

}

//写入东西

for(i=0; i<10; i++)

{

scanf("%d", &d);//用户出入

fprintf(fp,"%d\t", d);//写入指针fp,写入的东西就是刚才的用户输入的d,注意这里的fp和d没有引号

}

//关闭文件

fclose(fp);

return 0;

}

格式化输出:

#include

#include

int main()

{

FILE *fp;//文件指针

int i, No;

float salary;

/*文件的打开*/

fp=fopen("data.csv","w");//csv文件可以直接用excel打开

if(fp==NULL) //判断如果文件指针为空

{

printf("File cannot open! " );

exit(0); //在以0的形式退出,必须在文件开头有#include ,stdlib 头文件即standard library标准库头文件

}

//写入东西

for(i=0; i<5; i++)

{

scanf("%d %f", &No,&salary);//用户出入

fprintf(fp,"%d,%.2f\n", No,salary);//!!!!!尤其注意这里要用逗号隔开,因为excel表里面就默认识别逗号隔开的才能分类fprintf(文件指针,格式字符串,列表)

} //关闭文件 fclose(fp); return 0;}

格式化输入:

#include

#include

int main()

{

FILE *fp;//文件指针

int i, No;

float salary;

/*文件的打开*/

fp=fopen("data.csv","r");//改用读取的形式"r"

if(fp==NULL)

{

printf("File cannot open! " );

exit(0);

}

//从文件中读入5名员工的工号和工资,并显示

for(i=0; i<5; i++)

{

fscanf(fp,"%d,%f", &No,&salary);//格式化输入fscanf(文件指针,格式字符串,输入列表)

printf("%d\t%.2f\n", No,salary);

}

//关闭文件

fclose(fp);

return 0;

}

格式化输出字符:

#include

#include

int main()

{

FILE *fp;

char ch;//定义字符变量

if ((fp=fopen( "data.dat" , "w" ))==NULL)

{

printf("File cannot open!");

exit(0);

}

while((ch=getchar())!=EOF )//用户输入字符,EOF为C语言定义的-1即失败

fputc(ch,fp );//将无数的字符可以输入到文件中,使用ctrl+z结束输入

//关闭文件

fclose(fp);

return 0;

}

格式化输入字符:

#include

#include

int main()

{

FILE *fp;

char c;

if ((fp=fopen( "data.dat" , "r" ))==NULL)

{

printf("File cannot open!");

exit(0);

}

while((c=fgetc(fp))!=EOF)

putchar(c);

fclose(fp);

return 0;

}

执行情况:

文件操作步骤:

9da1a50d3fb9e35b500436b5913ea9b9.png

cfa74a36120133893b8f8c2135bb0c3d.png

98e2f898592259aebd3a0771ece28774.png

格式化输出;

a7ebf276776ca89fb4136f73e0684cd8.png

2e6a378d9ed11eebc1f437e0da7b7a52.png

7404e292b13ba336cae2b95205ea58b0.png

格式化输入:

ff9933587a5893c3c92463a62f7f0960.png

格式化输出字符:

12d256937f5961a32def94288cc679c1.png

9b8c7474fbfd5b6945bab047db57a2b3.png

格式化输入字符:

c692f4f3566e4ed481606ea298ee9fba.png

知识总结:

191f4fdadd93221d0bb435c37ded0b6a.png

读取文件就是文件从磁盘传到内存,输出写出程序就是将文件从内存出处到磁盘保存

94a4b20fe1860f4c8b0a7db48e8f212f.png

读写文件的步骤:

28075169a0077c049d2f5c1c739911e5.png

开头:

stdlib 头文件即standard library标准库头文件,常用的函数如malloc()、calloc()、realloc()、free()、system()、atoi()、atol()、rand()、srand()、exit()等等。

文件指针:

在C语言中用一个指针变量指向一个文件,这个指针称为文件指针。通过文件指针就可对它所指的文件进行各种操作。

FILE *指针变量标识符;

打开文件:

84e798cc9707ec368a974545e53055b2.png

函数原型:FILE * fopen(const char * path,const char * mode);

参数说明:

参数path字符串包含欲打开的文件路径及文件名,参数mode字符串则代表着流形态。

mode有下列几种形态字符串:

r 以只读方式打开文件,该文件必须存在。

r+ 以可读写方式打开文件,该文件必须存在。

rb+ 读写打开一个二进制文件,允许读数据。

w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。

w+ 打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。

文件操作:

格式化输出数字:

fprintf(fp,"%d,%.2f\n", No,salary);//!!!!!尤其注意这里要用逗号隔开,因为excel表里面就默认识别逗号隔开的才能分类fprintf(文件指针,格式字符串,列表)

格式化输入数字:

fscanf(fp,"%d,%f", &No,&salary);//格式化输入fscanf(文件指针,格式字符串,输入列表)

格式化输出字符:

fputc(ch,fp );

格式化输入字符:

fgetc(fp)

80ac25d08071b918b3538a8002cc3ce1.png

关闭文件:

fclose(fp);

心得体会:

不要弄反了putchar()和fputc(),getchar()和fgetc();

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值