练习打开文件,关闭文件,一个一个的读写,一行一行的读写(文本操作)

 1 #include <stdio.h>
 2 /*
 3 文件练习打开文件,关闭文件,一个字符一个字符的读写文件,一行一样的读写文件,文本操作
 4 */
 5 //从后往前写入文件
 6 void WriteData(FILE * fpw1)
 7 {
 8     char *p[] = {"123456","789","zhangyong"};
 9     int len = sizeof(p)/4;
10     while(len)
11     {
12         fputs(p[len-1],fpw1);
13         len--;
14     }
15 }
16 //从前往后写入文件
17 void WriteData2(FILE * fpw2)
18 {
19     char *p[] = {"123456","789","zhangyong"};
20     int len = sizeof(p)/4;
21     for(int i = 0;i<len;i++)
22         fputs(p[i],fpw2);
23 }
24 int main(void)
25 {
26     //创建文本文件并且打开,打开方式,读写"w+",一个字符一个字符的写入数据
27     FILE * fpw = fopen("文件练习打开文件,关闭文件,一个字符一个字符的读写文件,一行一样的读写文件,文本操作.txt","w+");
28     if(NULL == fpw)
29         return -1;
30     for(char ch = 'a';ch<= 'z';ch++)
31         fputc(ch,fpw);
32     fclose(fpw);
33     //读取写入文件的数据,打开方式,只读"r",一个字符一个字符的读取
34     FILE * fpr = fopen("文件练习打开文件,关闭文件,一个字符一个字符的读写文件,一行一样的读写文件,文本操作.txt","r");
35     if(NULL == fpr)
36         return -1;
37     while((ch = fgetc(fpr)) != EOF)
38     {
39         printf("%c",ch);
40     }
41     putchar(10);
42     fclose(fpr);
43     //创建文本文件,并且打开,一行一行的写入数据。打开方式 "w+"
44     FILE * fpw1 = fopen("一行一行的写.txt","w+");
45     WriteData(fpw1);
46     FILE * fpw2 = fopen("一行一行的写1.txt","w+");
47     WriteData2(fpw2);
48     //读取写入文件的数据.一行一行的读取文件
49     rewind(fpw1);//写入文件不关闭,需要将指针重新指向文件开始位置。
50     rewind(fpw2);
51     char buf[1024];
52     printf("一行一行的写.txt文本内容
");
53     while(fgets(buf,1024,fpw1))
54         printf("%s
",buf);
55     printf("一行一行的写1.txt文本内容
");
56     while(fgets(buf,1024,fpw2))
57         printf("%s
",buf);
58 
59     fclose(fpw1);
60     fclose(fpw2);
61     return 0;
62 }    
原文地址:https://www.cnblogs.com/wangchaomahan/p/9768300.html