题目:向文件wang.txt中写入两行文本,然后分三次读出其内容
#include<stdio.h>
#include<stdlib.h>
void main()
{
FILE *fp1,*fp2;
char str[]="123456789";
fp1=fopen("wang.txt","w"); //打开成功时,fp1会指向文件内容的起始处,打开失败时,fp1会返回NULL
if(fp1==NULL) exit(0);
fputs(str,fp1); //将字符串str输入到fp1所指的文件中,并且fp1向后移动到字符串str的末尾处
fputs("\nabcd",fp1);//将字符串“\nabcd”写入到fp1所指的文件中
fclose(fp1);//写完之后记得关闭fp1所指向的文件
fp2=fopen("wang.txt","rt"); //打开fp2,并且将fp2指向打开的文件
fgets(str,8,fp2);//将fp2所指向的文件里的八个字符长度赋值给str,其实只有七个字符
printf("%s\n",str); //输出从文件里获取的str
fgets(str,8,fp2);//将fp2指向的文件里的下一个八个字符长度赋值给str,但是遇到回车就会结束
printf("%s\n",str);
fgets(str,8,fp2);
printf("%s\n",str);
fclose(fp2);//关闭fp2所指的文件
}
运行结果:
注意: cd 是到某个文件夹,而不能是到某个文件,所以第一次输入 时出现错误,系统找不到指定路径
最终输出
1234567 //第一次是输出七个字符
89 //第二次本应该输出七个字符,但是9后面是一个回车,所以输出回车之后结束输出
abcd //输出七个字符,但是遇到文件尾