C语言文件的简单存储
最近在复习C语言,遂将以前的笔记整理,以供以后翻阅。
这是实现文件的读入和文件的写出。
基本步骤是:
1.先判断文件是否可以打开,
2.进行文件的读入或者写出,
3.读写完毕,关闭文件。
/**
“a” 如果没有文件,则会创建文件,如果文件存在,则会打开文件后在文件末尾添加
“w” 如果没有文件,创建文件,如果有文件,则是将原有内容清空,重新写入内容
“r” 如果没有文件,则会报错,如果有文件,则会打开文件后读取
*/
#define MAXLENGTH 1024*1024 //1024*1024*1024则运行异常缓慢
int main(int argc, char *argv[])
{
FILE *fpIn,*fpOut;
char ch;
int count=0,i=0;
char array[MAXLENGTH];
char inFileName[] = “D:\\C-C++\\FileTest\\InFile.txt”;
char outFileName[] = “D:\\C-C++\\FileTest\\OutFile.txt”;
// 读入
if((fpIn=fopen(inFileName,”r”))==NULL){ //注意这个“r”必须是双引号,其中如果该文件不存在,则不会自行创建
printf(“文件打开失败!!!\n”);
exit(0);
}else{
printf(“文件打开成功!!!\n”);
}
// 写出
if((fpOut=fopen(outFileName,”w+”))==NULL){ //“w+”则可以使文件在写入后被读取哦。,
printf(“文件打开失败!!!\n”);
exit(0);
}else{
printf(“文件打开成功!!!\n”);
}
printf("\\n-----------------读入----------------\\n");//分割线
while((ch=fgetc(fpIn))!=EOF)\{
putchar(array\[count\]);
array\[count++\]=ch;
\}
printf("%s",array);
// for(i=0;i<MAXLENGTH ;i++){
// array[i]=’d’;
// }
printf("\\n------------------写出---------------\\n");//分割线
for(i=0;i<count;i++)\{
fputc(array\[i\],fpOut);
putchar(array\[i\]);
\}
printf("\\n----------显示文件中的读写---------------\\n");//分割线
rewind(fpOut);
while((ch=fgetc(fpOut))!=EOF)\{
putchar(ch);
\}
fclose(fpIn);
fclose(fpOut);
printf("\\n文件关闭");
return 0;
}
还没有评论,来说两句吧...