http://c.biancheng.net/c/file/
FILE *fp;
struct _iobuf {
char *_ptr; //文件输入的下一个位置
int _cnt; //当前缓冲区的相对位置
char *_base; //指基础位置(应该是文件的起始位置)
int _flag; //文件标志
int _file; //文件的有效性验证
int _charbuf; //检查缓冲区状况,如果无缓冲区则不读取
int _bufsiz; //文件的大小
char *_tmpfname; //临时文件名
};
typedef struct _iobuf FILE;
- 文件的打开(fopen函数):
FILE *fp;
fp = fopen(文件名,使用文件方式);
‘r’ :用‘r’打开文件时,该文件必须已经存在,且只能从该文件读出(若不存在,会指向一个空指针NULL)
‘w’ :用‘w’打开的文件只能想改文件写入。若打开的文件不存在,则以指定的文件名简历该文件,若打开的文件已存在,则删去该文件,重新建立一个新文件。
‘a’ :想一个已存在的文件追加新的信息,该文件必须存在,否则出错。 - 文件的关闭(fclose函数)
fclose(文件指针); //是文件指针变量不指向该文件,此后不能通过该指针对原来与其相联系的文件进行读写操作。关闭成功返回值为0;否则返回EOF(-1)。 - 文件的读写、
字符读写函数:fgetc(fp)和fputc(ch,fp)
字符串读写函数:fgets(str,n,fp)和fputs(“STRING”,fp)
数据块读写函数:fread(buffer,size,count,fp)和fwrite(buffer,size,count,fp)
[
buffer:是一个指针(fread读入数据的存放地址;fwrite输出数据的地址)
size:要读写的字节数
count:要进行读写多少个size字节的数据项
]
格式化读写函数:fscanf和fprinf