黑马程序员技术交流社区
标题:
c语言学习心得——文件操作
[打印本页]
作者:
vyqrvwgf
时间:
2015-11-3 12:42
标题:
c语言学习心得——文件操作
1.文件操作的步骤
1)导入头文件stdio.h
2)定义文件指针
3)打开文件
4)读写文件
5)关闭文件
2.文件操作函数
1)字符读写函数 fgetc,fputc
2)字符串读写函数 fgets,fputs
3)数据块读写函数 fread,fwrite
4)格式化读写函数 fscanf,fprintf
3.文件的打开(fopen)关闭(fclose)
FILE *fp=NULL
p=fopen(文件名,使用文件的方式)
1)文件指针名必须是被说明为FILE类型的指针变量
2)文件名是被打开文件的文件名
3)使用文件方式是指文件的类型和操作要求
4)文件名是字符串常量式字符串数组
#include <stdio.h>
//a.txt储存在product目录下
int main(){
FILE *fp=NULL;
fp=fopen("a.txt","r");
if(fp!=NULL){
printf("file");
}else{
printf("文件打开失败!按任意键推出!");
gechar();
exit(1);
}
return 0;
}
复制代码
4.文件操作方式
1)r
只读文件,不能向文件写入数据。
2)w
创建一个新文件,准备向文件写入数据,不能从文件中读取数据,如果文件已存在,这个文件将被覆盖(先删后建)
3)a
打开一个已存在的文件,准备在文件尾部追加数据,不能从文件中读取数据,如果文件不存在,则创建这个文件。
4)r+
打开一个已存在的文件,准备读写
5)w+
创建一个新文件,准备读写,覆盖
6)a+
打开一个已存在的文件,准备在文件尾部追加数据,可以读写。
7)t
打开一个文本文件(ascii码文件)
8)b
打开一个二进制文件
默认打开方式是rt
5.fgetc和fputc
1)fputc(字符,文件指针);
#include <stdio.h>
int main(){
FILE *fp = NULL;
fp=fopen("fputc.txt","w");
if(fp!=NULL){
char ch = 'x'
fputc(ch,fp);
printf("写入成功");
}else{
printf("打开文件失败,按任意键推出!");
getchar();
exit(1);
}
fclose(fp);
return 0;
}
复制代码
2)fgetc()
FILE *fp=fopen("fputc.txt","r");
ch=fgetc(fp);
#include <stdio.h>
#include <stdlib.h>
int main(){
char ch[]="i love china";
FILE *fp=fopen("ch.txt","w");
if(fp!=NULL){
for(int i=0;i<strlen(ch);i++){
fputc(ch[i],fp);
}
}else{
printf("打开文件失败,请按任意键退出!");
getchar();
exit(1);
}
fclose(fp);
return 0;
}
复制代码
#include <stdio.h>
#include <stdlib.h>
int main(){
FILE *fp=fopen("ch.txt","r");
char s=fgetc(fp);
while(s!=EOF){
putchar(s);
s=fget(fp);
}
fclose(fp);
return 0;
}
复制代码
6.字符串读取函数fgets(),fputs()
fputs()读取时,遇到\n和EOF结束读取
fputs 的返回值为输入字符的个数
7.数据块读写函数fread()和fwrite()
freard(buffer,size,count,fp);
fwrite(buffer,size,count,fp);
1)buffer
指针,存放数据的地址,输出数据的地址
2)size
块的大小
3)count
读取几块
4)fp
文件指针
作者:
773809810
时间:
2015-11-3 16:01
学习了,不错不错
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2