C语言样式的文件操作函数

时间:2021-11-23 09:56:44

使用C语言样式的文件操作函数,需要包含stdio.h头文件。

1.打开文件的函数:

1 //oflag的取值为“w”或“r”,分别表示以写或读的方式打开
2 FILE* fd = fopen(filename.c_str(), oflag);

2.写文件的函数原型:

size_t fwrite(const void* buffer, size_t size, size_t count, FILE* stream );

其中buffer是需要向文件中写入的内容在内存中的首地址指针,size是待写入内容的每个元素的字节数,count是要写多少个元素,stream 是文件指针,示例如下:

1 FILE * fp;
2 fp = fopen("filename", "wb")
3 int a[3] = {1,2,3};
4 fwrite(a, sizeof(int), 3, fp);
5 fclose(fp);

3.读文件函数的原型与写文件非常类似:

size_t fread(const void* buffer, size_t size, size_t count, FILE* stream );

4.获取文件信息的函数:

1 struct stat statbuf;
2 fstat(fileno(fp), &statbuf);

得到的statbuf便是包含文件信息的结构体,如statbuf.st_size是获取文件的大小

5.移动文件位置指针函数原型:

 int fseek(FILE *fp,long offset,int origin);

第一个参数file指针;第二个参数移动的偏移量;第三个参数从那里开始移动,分别用3个宏 SEEK_SET (0)表示文件开头, SEEK_CUR (1)表示文件当前位置, SEEK_END(2)表示文件结尾 (不推荐用数字,最好用宏)

6.不要忘了关闭文件哦:

fclose(fp);