文件的模式 Binary mod:文件中的每个比特都可以被程 文件操作 序访问到。比如 wav, bmp文件等。 ■ Text mode:存储的格式化的文本,程序所 操作的文本有可能和存储在文件系统中的 内容不一样(与操作平台相关) 高壮 ■Read:把文件上的回车和换行换成C/C++语 2007.10 中的回车和换 Write:把C/C++语言中的回车和换行换成文 件中的回车和换行 文件的模式 C语言的文件操作 ■在C语言中,文件的操作和结构体FE有不可分 ■一些常用的文件操作函数 size_t fwrite(const size t size, size t len, F size_t size, size_t len, FILE* fp) int fprintf(FIlE*ip, const char* format,; n int fscanf(FILE"fp, const char* format, ed scarahr'n o her heaving bosun ' r'n m int putc( int c, FILE. fp); C语言的文件操作 C语言的打开文件操作 ■一些常用的文件定位函数: a FILE *fopen( const char *filename, const char long ftell(FIlE*fp) *node ) ■参数 int fsetpos(FILE*fp const fpos_t*cur): 例子: 文件名 c( SEEK_CUR表示从当前位置向后核动个字 ■打开的模式,权限,格式 得到当前的文件位置 ■ Return value 勺读写位置。cur实际上是 对其运算,比如cur+ 指向打开的文件的指针,如果打开文件错 误,则返回NUI1 文件操作 高壮 2007.10 文件的模式 Binary mod:文件中的每个比特都可以被程 序访问到。比如wav,bmp文件等。 Text mode:存储的格式化的文本,程序所 操作的文本有可能和存储在文件系统中的 内容不一样(与操作平台相关) Read: 把文件上的回车和换行换成C/C++语 言中的回车和换行 . Write: 把C/C++语言中的回车和换行换成文 件中的回车和换行. 文件的模式 C语言的文件操作 在C语言中,文件的操作和结构体FILE有不可分 割的作用. 一些常用的文件操作函数: FILE * fopen(const char * filename, const char * openmode); size_t fwrite(const void * data, size_t size, size_t len, FILE * fp); size_t fread(void * date, size_t size , size_t len , FILE * fp); int fprintf(FILE * fp, const char * format, ...); int fscanf(FILE * fp, const char * format, ...); int putc( int c, FILE * fp); int getc( FILE * fp); int fclose(FILE * fp); C语言的文件操作 一些常用的文件定位函数: long ftell(FILE *fp) int fseek(FILE * fp, long offset, int origin); int fgetpos(FILE * fp, fpos_t *cur); int fsetpos(FILE * fp const fpos_t *cur); 例子: fseek(fp,9,SEEK_CUR);表示从当前位置向后移动9个字 符;(其中SEEK_CUR 1;SEEK_END 2;SEEK_SET 0) fpos_t cur; fgetpos(fp,&cur);得到当前的文件位置, 可以通过fsetpos(fp,cur)设置fp的读写位置。cur实际上是 int64,所以可以对其运算,比如cur++; C语言的打开文件操作 FILE *fopen( const char *filename, const char *mode ); 参数 filename 文件名 mode 打开的模式,权限,格式 Return Value 返回一个指向打开的文件的指针,如果打开文件错 误,则返回NULL