C++文件读写函数 —— fopen、fread、fwrite

一、

fopen: 打开文件

头文件为:#include<stdio.h>

格式:FILE * fs = fopen(const char * path, const char * mode);

path: 需要打开的文件路径。

mode: 打开文件的方式。

modefunction
r以只读方式打开文件,该文件必须存在
w打开只写文件,若文件存在,则将文件长度清0,即文件内容消失,若文件不存在建立该文件
r+以可读、写方式打开文件,该文件必须存在
w+打开只读写文件,若文件存在,则将文件长度清0,即文件内容消失,若文件不存在则建立该文件

返回值:若文件打开,则返回指向该流的文件指针,如果文件打开失败,则返回为NULL,并把错误代码写在error中。

一般来说,打开文件后会执行读和写的操作,若打开失败接下来也没办法进行,所以后面一般会跟打开错误的判断及处理。

string strFileName = "DataServerConfig.xml";
FILE* fs = fopen(strFileName.c_str(), "r");
if (fs == NULL) {
	LOGINFO("Error when load file[%s] not found", strFileName.c_str());
	return;
}
fclose(fs);

二、

fread()函数和fwrite()函数:(用来实现对数据块的操作)

/ 读取文件块数据

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

// 写入文件块数据

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

fread参数说明:buffer是读取数据后存放的地址,size是块的长度,count是块的数量,实际读取的长度为size*count,返回值为成功读取块的count数量

fwrite参数说明:buffer是写入数据后存放的地址,size是块的长度,count是块的数量,实际读取的长度为size*count,返回值为成功写入块的count数量。


版权声明:本文为qq_37621623原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。