C 文件读写
打开文件
使用 fopen( ) 函数来创建一个新的文件或者打开一个已有的文件,这个调用会初始化类型 FILE 的一个对象,类型 FILE 包含了所有用来控制流的必要的信息。
函数调用原型:
FILE *fopen( const char * filename, const char * mode );
filename 是字符串,用来命名文件,访问模式 mode 的值列于下列表格之中
处理二进制文件:
访问模式应变更为:“rb”, “wb”, “ab”, “rb+”, “r+b”, “wb+”, “w+b”, “ab+”, “a+b”
关闭文件
使用 fclose( ) 函数。
函数调用原型:
int fclose( FILE *fp );
如果成功关闭文件, 函数返回零,如果关闭文件时发生错误,函数返回 EOF。
写入文件
把字符写入到流中的最简单的函数:
int fputc( int c, FILE *fp );
把字符串写入到流中:
int fputs( const char *s, FILE *fp );
int fprintf(FILE *fp,const char *format, ...);
读取文件
从文件读取单个字符的最简单的函数:
int fgetc( FILE * fp );
从流中读取一个字符串:
char *fgets( char *buf, int n, FILE *fp );
int fscanf(FILE *fp, const char *format, ...) ;(在遇到空格和换行符时会停止读取)
二进制 I/O 函数
以下两个函数都是用于存储块的读写,通常是数组或结构体。
二进制输入:
size_t fread(void *ptr, size_t size_of_elements, size_t number_of_elements, FILE *a_file);
二进制输出:
size_t fwrite(const void *ptr, size_t size_of_elements, size_t number_of_elements, FILE *a_file);