C 文件随机读写


 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 
 4 void eatline(){
 5     while(getchar()!='\n')
 6         continue;
 7 }
 8 //文件随机读写
 9 int main(int argc, char * argv[])
10 {
11     FILE *fp;
12     int offset,tel;
13     long in_stream;
14     char ch,get;
15     long pos;
16     if((fp = fopen("E:/test/test.txt","r+b"))==NULL){
17         fp = fopen("E:/test/test.txt","w+b");
18         /*printf("Can't open this file.\n");
19         exit (1);*/
20     }
21     
22     while(1){
23         puts("Usage: number alpha, first input with an alpha will stop.");
24         int count = scanf("%d %c",&offset,&ch);
25         eatline();
26         if(count == 2){
27             //定位文件指针
28             fseek(fp,offset * sizeof(char),0);
29             //取出当前指针指向的数据,并保存指针偏移量
30             in_stream = fread(&get,sizeof(char),1,fp);
31             printf("char=%c\n",get);
32             //指针重新指向上一个索引处,并修改其中内容
33             fseek(fp,-in_stream*sizeof(char),1);
34             fwrite(&ch,sizeof(char),1,fp);
35         }else{
36             puts("Bye!");
37             fclose(fp);
38             return 0;
39         }
40     }
41     
42 }
C文件随机读写
posted @ 2017-05-06 22:00  黑马网仔  阅读(455)  评论(0编辑  收藏  举报