第十三章 文件输入/输出
- fopen--fclose
fopen 是文件的操作的开始 fclose是文件操作的结束
- getc--putc getchar--putchar
getc对应文件的获取单个字符
char ch[];
FILE * fp;
...//fopen()...; ch = getc(fp); putc(ch,fp);
getchar 对应字符的键盘输入输出操作操作
#include<stdio.h> int main()
{ char ch = getchar();
char str[] = {};
int i = ;
while(ch != '\n')
{
str[i++]=ch;
// putchar(ch);
ch = getchar() ; }
str[i]=ch;
putchar(ch);
printf("*%s \n",str);
return ;
}
- fgets--fputs gets--puts
fgets,fputs 针对文件进行字符串进行操作,也可以针对键盘等。
#include<stdio.h> int main()
{
FILE *p ; char line[]={}; while(fgets(line,,stdin)!=NULL && line[]!= '\n')
{
fputs(line,stdout);
}
return ; }
这段代码是对文件之间进行操作但是逻辑可能又问题 只是简单的展示作用
#include<stdio.h>
#include<string.h> int main()
{
FILE *fp ; char line[]={};
fp = fopen("content_server.list","r+");
while(fgets(line,,fp)!=NULL && line[]!= '\n')
{
strcat(line,"lcw");
fseek( fp , , SEEK_CUR );
printf("%s %d\n",line,fputs(line,fp));
// fputs(line,fp);
} fputs("@@",fp);
fclose(fp);
return ; }
gets--puts 正对键盘输入输出字符串进行操作
#include<stdio.h> int main()
{
FILE *fp;
char words[]; fp = fopen("./content_server.list","a+"); while(gets(words)!=NULL && words[]!='\0')
{
fprintf(fp,"%s",words);
} rewind(fp);
char ch;
while(fscanf(fp,"%s",words)==)
{
//putchar(ch);
puts(words);
} fclose(fp);
return ; }
- fprintf--fscanf printf--scanf--sprintf
fpirntf:类似pfuts fprintf->fputs->fputc 这个是三者的调用时间的结果。详细查询 http://blog.csdn.net/slimfox/article/details/1092709
fscanf:这个不想讲太多参考上面的代码
scanf:键盘读入数据
sprintf:格式化字符串
- fseek--ftell
fseek 移动文件的当前位置
ftell 显示文件的当前位置